Java编程讲义
目 录
第1章 Java开发入门
视频讲解
1.1 Java概述
1.1.1 Java的由来与前景
1.1.2 Java的特点
1.1.3 Java的需求地位
1.2 Java开发环境搭建
1.2.1 JDK简介
1.2.2下载和安装JDK
1.2.3环境变量配置
1.2.4测试JDK安装成功与否
1.2.5 JDK目录详细剖析
1.3 Java程序的开发步骤
1.3.1编辑源代码
1.3.2编译程序
1.3.3运行程序
1.3.4简化的编译运行程序
1.3.5 CLASSPATH使用
1.3.6反编译
1.4 Java虚拟机与垃圾回收
1.4.1 Java虚拟机JVM
1.4.2垃圾回收机制
1.5 InteliJ IDEA开发工具
1.5.1 IDEA概述
1.5.2 IDEA的安装与启动
1.5.3使用IDEA进行程序开发
1.6本章小结
1.7理论试题与实践练习
第2章Java语言基础
视频讲解
2.1 Java基本语法
2.1.1 Java语法的基本格式
2.1.2 Java关键字
2.1.3 Java标识符规则
2.1.4 Java注释
2.1.5 Java编程风格
1.Allmans风格
2.Kernighan风格
2.2 Java基本数据类型
2.2.1整数类型
2.2.2浮点数类型
2.2.3字符类型
2.2.4逻辑类型
2.2.5字符串
2.3变量与常量
2.3.1变量及其声明
2.3.2常量及其声明
2.3.3 var变量及其声明
2.3.4变量作用域
2.4运算符与表达式
2.4.1算术运算符与算术表达式
2.4.2自增、自减运算符
2.4.3算术混合运算的精度
2.4.4关系运算符与关系表达式
2.4.5逻辑运算符与逻辑表达式
2.4.6赋值运算符与赋值表达式
2.4.7位运算符
2.4.8 instanceof运算符
2.4.9运算符优先级
2.5基本数据类型的转换
2.5.1自动转换
2.5.2强制转换
2.6数据存储区与引用数据类型
2.6.1全局数据区(Global)
2.6.2栈存储区(Stack)
2.6.3堆(Heap)与引用数据类型
2.7输入与输出
2.7.1如何使用Scanner获取键盘数据
2.7.2控制台输出
2.8本章小结
2.9理论试题与实践练习
第3章 逻辑控制
视频讲解
3.1Java程序结构
3.1.1顺序结构
3.1.2选择结构
3.1.3循环结构
3.2选择语句
3.2.1 if条件语句
3.2.2 switch条件语句
3.3循环语句
3.3.1 while循环语句
3.3.2 do...while循环语句
3.3.3 for循环语句
3.3.4 foreach语句
3.4循环嵌套
3.5跳转语句
3.5.1 break语句
3.5.2 continue语句
3.5.3 return语句
3.6本章小结
3.7理论试题与实践练习
第4章 数组
视频讲解
4.1一维数组
4.1.1声明数组
4.1.2数组元素的分配
4.1.3数组元素的使用
4.1.4 length的使用
4.1.5数组的初始化
4.1.6引用类型数组的初始化
4.2二维数组
4.2.1二维数组的创建
4.2.2二维数组的内存分配
4.2.3嵌套循环存取二维数组
4.2.4非对称型数组
4.3数组的排序与查找
4.3.1数组元素排序
4.3.2数组元素的查找
1.顺序查找
2.二分查找
4.4本章小结
4.5理论试题与实践练习
第5章 类与对象
视频讲解
5.1面向对象概述
5.2类与对象
5.2.1类与对象的关系
5.2.2类的声明
5.2.3成员变量
5.2.4成员方法
5.2.5类的UML图
5.2.6对象的创建与使用
5.2.7访问控制
5.3类的封装
5.4构造方法
5.5方法重载
5.5.1构造方法的重载
5.5.2成员方法的重载
5.6 this关键字
5.7 static关键字
5.7.1静态变量
5.7.2静态方法
5.7.3静态代码块
5.8包
5.8.1包的概念
5.8.2创建包
5.8.3导入包
5.8.4常用的包
5.9 本章小结
5.10 理论试题与实践练习
第6章 继承与多态
视频讲解
6.1类的继承
6.1.1继承的概念
6.1.2类的树形结构
6.1.3子类对象实例化
6.1.4继承限制
6.2父类方法的重写与限制
6.3 super关键字
6.4 final关键字
6.4.1 final修饰类
6.4.2 final修饰方法
6.4.3 final修饰局部变量
6.4.4 final修饰成员变量
6.5多态
6.5.1多态的概念
6.5.2对象类型转换
6.6 Object类
6.7本章小结
6.8理论试题与实践练习
第7章 抽象类、接口、内部类
视频讲解
7.1抽象类
7.1.1抽象类的概念
7.1.2抽象方法
7.1.3抽象类实现多态
7.2接口
7.2.1接口的概念
7.2.2接口的定义
7.2.3接口的继承
7.2.4抽象类和接口的比较
7.2.5接口默认方法
7.2.6接口实现多态
7.3内部类
7.3.1成员内部类
7.3.2局部内部类
7.3.3静态内部类
7.3.4匿名内部类
7.4本章小结
7.5理论试题与实践练习
第8章 异常处理
视频讲解
8.1 程序健壮性的保障,异常概述
8.2 异常的类型
8.2.1 常见的异常类型
8.2.2 异常类的体系结构
8.3 使用try...catch捕获异常
8.4 使用finally进行清理
8.4.1 finally用来做什么
8.4.2 在return中使用finally
8.4.3 异常丢失现象
8.5 异常中的throws关键字和throw关键字的使用
8.6 异常处理的嵌套
8.7 自定义异常
8.8本章小结
8.9理论试题与实践练习
第9章 Java常用类
视频讲解
9.1 String类
9.1.1 String类的初始化
9.1.2 String类的常见操作
9.2 StringBuffer类
9.3日期时间类
9.3.1 Date类
9.3.2 Calendar类
9.3.3 LocalDate类和LocalTime类
9.3.4 LocalDateTime类
9.3.5 DateTimeFormatter类格式化
9.3.6 DateTimeFormatter类解析字符串
9.4系统相关类
9.4.1 System类
9.4.2 Runtime类
9.5包装类
9.6数学相关类
9.6.1 Math类
9.6.2 BigInteger类
9.6.3 Random类
9.6.4数字格式化
9.7本章小结
9.8理论试题与实践练习
第10章 Lambda表达式
视频讲解
10.1 Lambda表达式入门
10.2函数式接口
10.3 Lambda表达式的简化形式
10.3.1 Lambda表达式省略参数类型
10.3.2 Lambda表达式省略参数小括号
10.3.3 Lambda表达式省略return和大括号
10.3.4作为参数使用Lambda表达式
10.4访问变量
10.4.1访问成员变量
10.4.2捕获局部变量
10.5方法引用和构造器引用
10.6 Lambda表达式调用Arrays的类方法
10.7本章小结
10.8理论试题与实践练习
第11章 集合与泛型
视频讲解
11.1 Java集合概述
11.2 Collection接口
11.3 List接口
11.3.1 List接口介绍
11.3.2 ArrayList集合
11.3.3 LinkedList集合
11.4 Collection集合遍历
11.4.1 Iterator遍历集合
11.4.2 foreach遍历集合
11.4.3 Predicate操作集合
11.5 Set接口
11.5.1 Set接口介绍和存储机制
11.5.2 HashSet集合
11.5.3 TreeSet集合
11.6 Map接口
11.6.1 Map接口介绍
11.6.2 HashMap集合
11.6.3 Map集合遍历
11.6.4 TreeMap集合
11.6.5 Properties集合
11.7泛型
11.7.1泛型的概念
11.7.2泛型类声明与使用
11.7.3泛型在集合中的使用
11.8常用工具类
11.8.1 Collections工具类
11.8.2 Arrays工具类
11.9 本章小结
11.10 理论试题与实践练习
第12章 Swing图形界面程序设计
视频讲解
12.1 Swing概述
12.1.1 Swing特点
12.1.2 Swing包
12.1.3常用Swing组件概述
12.2常用窗体
12.2.1 JFrame窗体
12.2.2 JDialog窗体
12.3标签组件与图标
12.3.1 JLabel标签
12.3.2图标
12.4常用布局管理器
12.4.1绝对布局
12.4.2 FlowLayout流布局管理器
12.4.3 BorderLayout边界布局管理器
12.4.4 GridLayout网格布局管理器
12.4.5 GridBagLayout网格组布局管理器
12.5事件监听器
12.5.1监听事件简介
12.5.2动作事件监听器
12.5.3焦点事件监听器
12.6常用面板
12.6.1 JPanel面板
12.6.2 JScrollPane面板
12.7按钮组件
12.7.1 JButton提交按钮组件
12.7.2 JRadioButton单选按钮组件
12.7.3 JCheckBox复选框组件
12.8列表组件
12.8.1 JComboBox下拉列表框组件
12.8.2 JList列表框组件
12.9文本组件
12.9.1 JTextField文本框组件
12.9.2 JPasswordField密码框组件
12.9.3 JTextArea文本域组件
12.10 菜单
12.10.1 JMenuBar菜单栏
12.10.2 JPopupMenu弹出式菜单
12.11本章小结
12.12理论试题与实践练习
第13章 输入/输出流
视频讲解
13.1 I/O流概述
13.2 File类
13.2.1 File类及其常用方法
13.2.2遍历目录下的文件
13.2.3删除文件及目录
13.2.4 RandomAccessFile类
13.3字节流
13.3.1字节流概述
13.3.2读写文件
13.3.3文件拷贝
13.3.4缓冲区与缓冲流
13.4字符流
13.4.1字符流定义及其基本用法
13.4.2操作文件
13.4.3转换流
13.5对象序列化
13.5.1对象序列化的概述和意义
13.5.2对象序列化的持久化
13.5.3引用对象的序列化控制
13.6本章小结
13.7理论试题与实践练习
第14章 多线程
视频讲解
14.1进程与线程
14.1.1进程
14.1.2线程
14.2多线程的实现
14.2.1继承Thread类实现多线程
14.2.2通过Runnable接口实现多线程
14.2.3通过Callable接口实现多线程
14.2.4三种实现多线程的方式对比
14.2.5后台线程
14.3线程的生命周期
14.3.1线程的新建和就绪状态
14.3.2线程的运行和阻塞状态
14.3.3线程的死亡状态
14.4线程的调度
14.4.1线程的优先级
14.4.2线程休眠sleep()方法
14.4.3线程让步wait()方法
14.4.4线程插队join()方法
14.5多线程同步
14.5.1线程安全
14.5.2多线程中的同步代码块
14.5.3 synchronized修饰的同步方法
14.5.4生产者与消费者队列
14.6本章小结
14.7理论试题与实践练习
第15章 数据库操作JDBC
视频讲解
15.1 JDBC概述
15.2 JDBC常用API
15.2.1 Driver接口
15.2.2 DriverManager类
15.2.3 Connection接口
15.2.4 Statement接口
15.2.5 PreparedStatement接口
15.2.6 CallableStatement接口
15.2.7 ResultSet接口
15.3 JDBC事务处理
15.3.1事务的概念
15.3.2 JDBC对事务的支持
15.3.3使用事务实现批量更新
15.4 DAO模式
15.4.1元数据
15.4.2 DatabaseMetaData接口
15.4.3 ResultSetMetaData接口
15.5数据库连接池技术
15.5.1 DBCP数据库连接池技术
15.5.2 C3P0数据库连接池技术
15.6本章小结
15.7理论试题与实践练习
第16章 网络编程
视频讲解
16.1网络编程基础
16.1.1网络通信协议
16.1.2 IP地址与端口号
16.1.3 InetAddress的使用
16.1.4 URLDecoder和URLEncoder的使用
16.1.5 URL、URLConenction和URLPermission的使用
16.2 UDP网络通信
16.2.1 UDP概念和协议基础
16.2.2 DatagramPacket类的概念及作用
16.2.3 DatagramSocket类的概念及作用
16.2.4 UDP多线程网络程序
16.3 TCP网络通信
16.3.1 TCP概念和三次握手机制
16.3.2 ServerSocket类的概念及使用
16.3.3 Socket类的概念及使用
16.3.4简易TCP网络程序
16.3.5 TCP多线程网络程序的概念
16.4代理服务器网络通信
16.4.1 Proxy创建连接网络通信
16.4.2 ProxySelector自动代理服务器
16.5 HTTPClient
16.5.1使用Get发送同步请求
16.5.2如何发送带请求体的请求
16.5.3异步请求
16.5.4 WebSocket接口
16.6本章小结
16.7理论试题与实践练习
第17章 基于Java Swing的健身房会员卡信息系统
视频讲解
17.1 项目概述
17.1.1 开发背景介绍 17.1.2 项目需求分析 17.1.3 项目功能结构分析和设计 17.1.4 项目业务流程图设计 17.1.5 项目整体功能预览17.2 数据库分析和设计
17.2.1 项目的E-R图设计17.2.2 项目的数据库设计 17.2.3 数据表的创建 17.2.4 数据表间的完整性约束设计
17.3 项目环境搭建
17.4 项目系统组织结构设计
17.4.1 项目公共类的设计 17.4.2 DAO数据通用访问类的设计 17.5 系统登录模块设计 17.5.1 登录窗体界面的设计 17.5.2 “登录”按钮的设计和事件处理
17.5.3 “密码”文本框的设计和事件处理
17.6 系统注册模块设计
17.6.1 注册窗体界面的设计 17.6.2 “密码”文本框的设计和事件处理
17.6.3 “验证码”的产生和设计
17.6.4 “注册”按钮的设计和事件处理
17.7 系统主界面设计 17.7.1 菜单栏的功能分析
17.7.2菜单栏的设计
17.8 会员管理信息模块设计 17.8.1 实现会员信息添加功能 17.8.2 实现会员信息编辑功能
17.8.3 实现会员信息查询功能
17.9 会员卡信息提醒模块设计
17.9.1 实现会员到期提醒功能 17.9.2 实现会员生日提醒功能
17.10 会员消费模块设计
17.10.1 实现会员消费添加功能 17.10.2 实现会员消费查询功能
17.11 管理员模块设计
17.11.1 数据库备份功能 17.11.2 数据库恢复功能
17.12 项目运行
17.13本章小结