1.Java简介
1.1简史
2.Java开发环境
2.1Java编译运行环境
2.2JDK、JRE、JVM关系
2.3JDK安装及环境变量配置
2.4控制台版的JAVA HelloWorld演示
3Eclipse
3.1简介
3.2使用Eclipse开发Java应用程序
4变量
4.1什么是变量
4.2变量的声明
4.3变量的命名
4.4变量的初始化
4.5变量的访问
5Java数据类型
5.1分类
5.2基本数据类型
5.2.1int类型
5.2.2long类型
5.2.3double类型
5.2.4char类型
5.2.5 boolean类型
5.3基本类型间转换
5.3.1类型间转换
5.3.2强制转换时的精度丧失和溢出
5.3.3数值运算时的自动转换
5.3.4byte、char、short转换为int
6.运算符
6.1赋值
6.2一元运算符
6.3算术运算
6.4移位运算符
6.5关系(比较)运算符
6.6逻辑运算
6.7位运算
6.8三目运算
6.9优先级
7分支和循环结构
7.1分支结构
7.1.1什么是分支结构
7.1.2if语句
7.1.2.1if语句的执行逻辑
7.1.2.2if语句流程图
7.1.2.3if语句用于处理分支逻辑
7.1.2.4if语句块不要省略“{}”
7.1.3if-else语句
7.1.3.1if-else语句的执行逻辑
7.1.3.2if-else语句流程图
7.1.3.3if-else语句用于处理分支逻辑
7.1.4else if语句
7.1.4.1if-else语句的嵌套
7.1.4.2else if语句执行逻辑
7.1.5switch-case语句
7.1.5.1switch-case语句执行逻辑
7.1.5.2switch-case和break联合使用
7.1.5.3switch-case语句用于分支
7.1.5.4switch-case的优势
7.2循环结构(while、do…while、for)
7.2.1什么是循环结构
7.2.2while语句
7.2.2.1while语句的执行逻辑
7.2.2.2while语句的流程图
7.2.2.3while语句用于处理循环逻辑
7.2.2.4使用break语句跳出循环
7.2.3do-while语句
7.2.3.1do-while语句的执行逻辑
7.2.3.2do-while语句的流程图
7.2.3.3do-while语句用于处理循环逻辑
7.2.3.4while和do-while语句的区别
7.2.4for语句
7.2.4.1考虑如下循环问题的相同之处
7.2.4.2for语句的执行逻辑
7.2.4.3for语句的流程图
7.2.4.4for语句用于实现固定次数循环
7.2.4.5for语句三个表达式特殊用法
7.2.4.6循环中使用break语句
7.2.4.7循环中使用continue语句
7.3循环问题
7.3.1循环问题
7.3.2循环问题定义------“当”循环
7.3.3循环问题定义------“直到”循环
7.3.4循环问题定义------固定次数循环
7.3.5逐步细化方式解决循环嵌套的问题
8数组
8.1什么是数组
8.2数组的定义
8.3数组的初始化
8.4数组的访问
8.4.1获取数组的长度
8.4.2通过下标访问数组元素
8.4.3遍历数组元素
8.5数组的复制
8.5.1System.arraycopy方法用于数组复制
8.5.2Arrays.copyOf方法用于数组复制
8.5.3数组的“扩容”
8.6数组排序
8.6.1数组的排序
8.6.2数组冒泡排序算法
8.6.3Arrays.sort方法用于数组排序
8.7二维数组
8.7.1二维数组内存结构
8.7.2定义:
8.7.3访问
9方法
9.1方法(函数、过程)
9.1.1定义方法(函数、过程)的功能
9.1.2定义参数和返回值
9.2方法的调用
9.2.1return语句
9.2.2调用方法时的参数传递
10对象和类
10.1面向对象程序设计
10.1.1面向过程的结构化程序设计
10.1.2什么是抽象数据类型
10.1.3什么是类
10.2定义一个类
10.2.1定义类的成员变量
10.2.2定义类的方法
10.3创建并使用对象
10.3.1使用new关键字创建对象
10.3.2引用类型变量
10.3.3访问对象的成员变量、调用方法
10.3.4引用类型变量的赋值
10.3.5null和NullPointerException
10.4方法的重载
10.4.1方法的签名
10.4.2方法重载及其意义
10.4.3编译时根据签名绑定调用方法
10.5构造方法
10.5.1构造方法语法结构
10.5.2通过构造方法初始化成员变量
10.5.3this关键字的使用
10.5.4默认的构造方法
10.5.5构造方法的重载
11数组对象
11.1引用类型数组
11.1.1数组是对象
11.1.2引用类型数组的声明
11.1.3引用类型数组的初始化
11.1.4数组的类型是基本类型数组
12对象内存管理
12.1对象内存管理
12.1.1对象内存管理
12.2堆内存
12.2.1对象存储在堆中
12.2.2成员变量的生命周期
12.2.3垃圾回收机制
12.2.4Java程序的内存泄露问题
12.2.5System.gc()方法
12.3非堆----栈
12.3.1栈用于存放方法中的局部变量
12.3.2局部变量的生命周期
12.3.3成员变量和局部变量
12.4非堆----方法区
12.4.1方法区用于存放类的信息
12.4.2方法只有一份
13继承
13.1继承
13.1.1泛化的过程
13.1.2extends关键字
13.1.3继承中构造方法
13.1.4父类的引用指向子类的对象
13.2重写
13.2.1方法的重写
13.2.2重写中使用super关键字
13.2.3重写和重载的区别
14访问控制
14.1包的概念
14.1.1package语句
14.1.2import语句
14.2访问控制修饰符
14.2.1封装的意义
14.2.2public和private
14.2.3protected和默认访问控制
14.2.4访问控制符修饰类
14.2.5访问控制符修饰成员
15static和final
15.1static关键字
15.1.1static修饰成员变量
15.1.2static修饰方法
15.1.3static块
15.2final关键字
15.2.1final修饰变量
15.2.2final修饰方法
15.2.3final修饰类
15.2.4static final常量
16Java静态代码块、构造代码块(非静态代码块)、构造方法
16.1执行顺序
16.2小结
17抽象类、接口和内部类
17.1使用抽象类
17.1.1抽象方法和抽象类
17.1.2抽象类不可以实例化
17.1.3继承抽象类
17.1.4抽象类的意义
17.2使用接口
17.2.1定义一个接口
17.2.2实现接口
17.2.3接口的继承
17.3使用接口
17.3.1接口和抽象类的区别
17.4多态
17.4.1多态的意义
17.4.2向上造型
17.4.3强制转型
17.4.4instanceof关键字
17.5内部类
17.5.1定义成员内部类
17.5.2创建内部类对象
17.5.3定义匿名内部类
17.6面向对象汇总
18常用类
18.1什么是常用类
18.2String类
18.2.1String类的特点
18.2.2String类的常用方法
18.2.2.1String类的构造方法
18.2.2.2String类的常用方法
18.3StringBuffer和StringBuilder类
18.3.1StringBuffer类的特点
18.3.2StringBuilder类的特点
18.3.3StringBuffer类的常用方法
18.3.3.1StringBuffer类的构造方法
18.3.3.2StringBuffer类的常用方法
18.3.3.3String、StringBuffer、StringBuilder的比较
18.4日期和时间处理类
18.4.1System的currentTimemillis()方法
18.4.2java.util.Date类
18.4.2.1Date类的构造方法
18.4.2.2Date类的常用方法
18.4.3SimpleDateFormat(日期对象格式化类)
18.4.3.1SimpleDateFormat类的构造方法
18.4.3.2SimpleDateFormat类的常用方法
18.4.4Calendar类(日历类)
18.4.4.1获取Calendar实例的方法
18.4.4.2SimpleDateFormat类的常用方法
18.5Math类
18.5.1Math类的特点
18.5.2Math类的常用方法
18.6Random类
18.6.1Random类的构造方法
18.6.2Random类的常用方法
18.7BigDecimal类
18.7.1BigDecimal类的构造方法
18.7.2Random类的常用方法
18.8包装类
19集合
19.1什么是集合
19.2Java集合的的分类
19.3Collection体系
19.3.1Collection接口
19.3.2List集合
19.3.2.1ArrayList类
19.3.2.2LinkedList类
19.3.2.3Vector类
19.3.3Set集合
19.3.3.1HashSet类
19.3.3.2LinkedHashSet类
19.4Map体系
19.4.1Map接口
19.4.2Map集合
19.4.2.1HashMap类
19.4.2.2LinkedHashMap类
19.4.2.3Hashtable类
19.4.2.4Properties类
19.5Collections工具类
19.5.1Collections的常用方法
20异常
20.1什么是异常
20.2异常的分类
20.2.1异常的分类
20.2.2异常类的层次结构
20.3常见异常
20.3.1运行时异常
20.3.2编译时异常
20.4异常的处理
20.4.1异常的处理方式
20.4.2捕获异常
20.4.3声明抛出异常
20.4.4人工抛出异常
20.4.5自定义异常类
20.4.6异常处理的5个关键字
21IO流
21.1File类
21.1.1File类的构造
21.1.2File类的常用方法
21.1.3File类的示例代码
21.2IO流
21.2.1IO流的分类
21.2.1.1InputStream
21.2.1.2OutputStream
21.2.1.3Reader
21.2.1.4Writer
21.2.1.5缓冲流
21.2.1.6流的关闭
21.2.1.7IO流的示例代码
22JDBC
22.1JDBC概述
22.2创建JDBC应用程序的步骤
22.3加载数据库驱动程序
22.4获得与数据库的连接
22.5Statement
22.6结果处理
22.7Java数据类型和JDBC类型的映射关系
22.8JDBC的事务管理
22.9JDBC批处理
23多线程
23.1程序、进程、线程
23.2Java的多线程实现
23.3创建线程类
23.4线程的执行权
23.5线程的生命周期
23.6线程的同步
23.7线程的通信
24网络编程
24.1网络通讯要素
24.2Socket(套接字)
24.3客户端开发
24.4服务端开发