书籍 JAVA学习笔记  从入门到实战的封面

JAVA学习笔记 从入门到实战PDF电子书下载

张晓博编著

购买点数

20

出版社

出版时间

2019

ISBN

标注页数

0 页

PDF页数

426 页

图书目录

第1章 Java语言基础 1

1.1 Java语言介绍 1

1.1.1 Java语言的发展历程 1

1.1.2 Java语言的体系 2

1.1.3 Java语言的特点 2

1.1.4 Java语言的地位 3

1.2 搭建Java开发环境 3

1.2.1 安装JDK 3

1.2.2 在Windows 7配置Java环境 6

1.2.3 在Windows 10配置Java环境 6

1.2.4 充分利用Java API文档 8

1.3 第一个Java程序 9

1.3.1 编写第一个Java代码 9

实例1-1:第一个Java程序代码 9

1.3.2 编译Java程序 9

1.3.3 运行Java代码 10

1.3.4 Java 11新特性:新的程序运行方式 11

第2章 使用IDE开发工具 12

2.1 使用Eclipse 12

2.1.1 IDE介绍 12

2.1.2 下载并安装Eclipse 12

2.1.3 新建一个Eclipse项目 16

2.1.4 编译并运行Eclipse项目 17

2.1.5 使用Eclipse打开一个Java工程——打开下载包中的项目 18

2.2 使用Intellij IDEA 19

2.2.1 搭建IntelliJ IDEA开发环境 19

2.2.2 使用IntelliJ IDEA新建Java工程 21

2.2.3 使用IntelliJ IDEA运行Java程序 22

第3章 Java基础语法 23

3.1 关键字、标识符和注释 23

3.1.1 关键字 23

3.1.2 标识符 24

3.1.3 注释 24

3.2 变量和常量 25

3.2.1 常量 25

实例3-1:定义几个Java常量 25

3.2.2 变量 26

实例3-2:计算三角形、正方形和长方形的面积 27

实例3-3:输出各种变量的值 27

3.3 数据类型 28

3.3.1 为什么引入数据类型 29

3.3.2 基本数据类型的取值范围 29

3.3.3 字符型 30

实例3-4:输出三种特殊符号 30

3.3.4 整型 31

实例3-5:通过整型类型计算图形周长和面积 31

3.3.5 浮点型 32

实例3-6:计算圆的面积 33

3.3.6 布尔型 33

实例3-7:比较两个数的大小 33

3.4 运算符 34

3.4.1 算术运算符 34

实例3-8:基本的数学运算(加、减、乘、除) 34

实例3-9:使用“%”运算符 35

实例3-10:使用递增与递减运算符 36

3.4.2 关系运算符和逻辑运算符 36

实例3-11:使用关系运算符比较数字和字符 37

3.4.3 位运算符 38

实例3-12:对两个整数实现位运算 39

3.4.4 条件运算符 39

实例3-13:使用条件运算符判断成绩是否优秀 39

3.4.5 赋值运算符 40

实例3-14:赋值类型不匹配的错误 40

3.4.6 运算符的优先级 40

实例3-15:四则混合运算 41

3.5 类型转换 42

3.5.1 自动类型转换 42

实例3-16:将整数自动转换为float类型 42

3.5.2 强制转换 43

实例3-17:实现int、byte和double类型之间的强制转换 43

第4章 使用条件语句 44

4.1 使用if语句 44

4.1.1 if语句介绍 44

实例4-1:判断成绩是否及格 45

4.1.2 if语句的延伸 45

实例4-2:对两种条件给出不同的答案 46

4.1.3 多个条件判断的if语句 46

实例4-3:模拟抽奖系统 47

4.2 使用switch语句 47

4.2.1 switch语句基础 48

实例4-4:判断数字的大小 48

4.2.2 没有break时的情形 49

实例4.5:执行switch后面的所有分支条件语句 49

4.2.3 case没有执行语句 49

实例4-6:在case语句后没有执行的代码 50

4.2.4 default可以不在末尾 50

实例4-7:将default放在第一个case分支中 50

第5章 使用循环语句 51

5.1 使用for循环语句 51

5.1.1 for循环介绍 51

实例5-1:输出整数0到9 52

5.1.2 嵌套使用for循环 52

实例5-2:使用嵌套for语句显示人民币符号和美元符号 53

实例5-3:在屏幕中输出一个用“*”摆放的菱形 53

5.2 使用while循环语句 54

5.2.1 while循环基础 54

实例5-4:循环输出18个数字 54

实例5-5:输出能够整除7的数字 55

5.2.2 do-while循环语句 55

实例5-6:使用do-while语句输出0到7 56

实例5-7:计算1+2+3+…+100的和 56

5.3 使用跳转语句 57

5.3.1 break语句 57

实例5-8:使用break终止循环的执行 57

实例5-9:在while循环语句中使用break 57

实例5-10:使用有标号的break语句 58

5.3.2 使用return语句 59

实例5-11:使用return语句结束循环的执行 59

5.3.3 使用continue跳转语句 59

实例5-12:使用continue改变for循环的运行结果 59

第6章 操作字符串 61

6.1 Java字符串的初始化 61

实例6-1:实现Java字符串的初始化 61

6.2 使用String类操作字符串 62

6.2.1 获取指定索引位置的字符 62

实例6-2:返回某个字符串指定索引的字符 62

6.2.2 追加字符串 63

实例6-3:在字符串后面追加字符串(好好+学习) 63

6.2.3 连接多个字符串 63

实例6-4:使用“+”连接两个对象 63

6.2.4 比较字符串 63

实例6-5:判断两个指定的字符串是否相等 64

6.2.5 获得字符串长度 64

实例6-6:获取字符串的长度 64

6.2.6 替换字符串 65

实例6-7:替换字符串中的某一个文字 65

6.2.7 截取字符串 65

实例6-8:截取一个字符串,并输出截取后的结果 65

6.2.8 字符串的大小写互转 66

实例6-9:对指定的字符串实现大小写转换 66

6.2.9 消除字符串中的空白字符 66

实例6-10:去掉字符串开头的空白字符 66

6.2.10 查找字符串 67

实例6-11:查找字符串str中空字符的位置 68

6.3 使用类StringBuffer 68

实例6-12:使用追加字符函数 69

第7章 使用数组 70

7.1 最简单的一维数组 70

7.1.1 声明一维数组 70

7.1.2 创建一维数组 70

实例7-1:创建并输出一维数组中的数据 71

7.1.3 初始化一维数组 72

实例7-2:初始化一维数组,并将数组值输出打印 72

7.2 二维数组 73

7.2.1 声明二维数组 73

7.2.2 创建二维数组 73

实例7-3:创建二维数组并输出打印里面的数据 74

7.2.3 初始化二维数组 74

实例7-4:打印输出二维数组中的数据 75

7.3 三维数组 76

7.3.1 声明三维数组 76

7.3.2 初始化三维数组 76

实例7-5:创建三维数组,然后输出打印数组内元素 77

7.4 操作数组 77

7.4.1 复制数组 78

实例7-6:复制一维数组中的元素 78

7.4.2 比较数组 79

实例7-7:比较两个一维数组 79

7.4.3 搜索数组中的元素 79

实例7-8:使用binarySearch()搜索数组内元素 79

7.4.4 排序数组 80

实例7-9:使用sort()排序数组内元素 80

7.4.5 填充数组 80

实例7-10:使用fill()向数组中添加新的元素 80

7.5 数组的高级用法 81

7.5.1 动态数组 81

实例7-11:将ArrayList作为Java动态数组 82

7.5.2 使用foreach循环 82

实例7-12:使用foreach遍历输出数组中的元素 83

7.5.3 数组和内存 83

实例7-13:初始化基本类型数组 84

第8章 类和方法 86

8.1 面向对象基础 86

8.1.1 面向对象介绍 86

8.1.2 Java的面向对象编程 87

8.1.3 Java面向对象的几个核心概念 87

8.2 类 88

8.2.1 定义类 89

8.2.2 定义属性 89

8.2.3 定义方法 90

8.2.4 定义构造器 91

8.3 修饰符 91

8.3.1 public修饰符 91

实例8-1:输出显示歼20的飞行里程 91

8.3.2 使用private修饰修饰符 92

实例8-2:使用private修饰符输出姓名和学号 92

8.3.3 使用protected保护修饰符 93

实例8-3:输出显示歼20列装和形成战力的年份 93

8.3.4 其他修饰符 93

实例8-4:使用默认修饰符创建属性和方法 93

8.4 使用方法 94

8.4.1 方法的所属性 94

8.4.2 传递方法参数 95

实例8-5:传递方法的参数 95

8.4.3 长度可变的方法 96

实例8-6:定义一个形参长度可变的方法 96

8.4.4 构造方法 97

实例8-7:在类中创建一个构造方法 97

8.4.5 递归方法 97

实例8-8:使用递归计算f(10)的值 97

8.5 使用this关键字 98

实例8-9:使用this引用全局变量 98

8.6 使用类和对象 99

8.6.1 创建和使用对象 99

实例8-10:在类中创建和使用对象 99

8.6.2 使用静态变量和静态方法 100

实例8-11:输出显示飞机的当前坐标 100

8.7 抽象类和抽象方法 101

8.7.1 抽象类和抽象方法基础 101

实例8-12:收获苹果和桔子 101

8.7.2 抽象类必须有一个抽象方法 102

实例8-13:展示汽车的油量变化 102

8.7.3 抽象类的作用 103

实例8-14:父类把一个或多个方法留给其子类实现 103

8.8 软件包 104

8.8.1 定义软件包 105

8.8.2 在Eclipse定义软件包 105

8.8.3 在程序里插入软件包 106

实例8-15:在类中插入一些特定的包 106

第9章 继承、重载、接口和构造器 108

9.1 类的继承 108

9.1.1 父类和子类 108

实例9-1:使用类的继承 108

9.1.2 调用父类的构造方法 109

实例9-2:输出品类为商业大佬自传的图书信息 109

9.1.3 访问父类的属性和方法 110

实例9-3:使用子类访问父类的属性 110

9.1.4 多重继承 111

实例9-4:实现3个类的多重继承 111

9.1.5 重写父类方法 113

实例9-5:过滤掉父类中的方法 113

9.2 重写和重载 114

9.2.1 重写 114

实例9-6:一个没有具体意义方法重写 114

实例9-7:输出显示××集团的信息 115

9.2.2 重载 116

实例9-8:显示继承人的信息 116

9.2.3 联合使用重写与重载 116

实例9-9:××集团的财产继承分配方案 117

9.3 隐藏和封装 118

9.3.1 Java中的封装 118

9.3.2 使用访问控制符 118

实例9-10:使用访问控制符改变程序的执行效果 119

9.4 接口 120

9.4.1 定义接口 120

9.4.2 接口中的量和方法 120

实例9-11:在接口中使用常量 121

实例9-12:在接口中使用方法 121

9.4.3 实现接口 122

实例9-13:通过接口实现数学运算 122

9.4.4 引用接口 123

实例9-14:引用接口计算数学题 123

9.4.5 接口的继承 124

实例9-15:实现三个接口之间的继承 125

第10章 多态、包装类、内部类和枚举类 126

10.1 多态 126

10.1.1 何谓多态 126

10.1.2 演示Java中的多态 128

实例10-1:认识第一个多态程序 128

10.2 引用类型 130

10.2.1 四种引用类型 130

实例10-2:使用引用类型回收资源 131

10.2.2 使用instanceof运算符 133

实例10-3:某某的出场费最高吗 133

10.2.3 引用变量的强制类型转换 134

实例10-4:实现Object类型和String类型之间的强制转换 134

10.3 组合 135

实例10-5:实现代码复用 135

10.4 初始化块 136

10.4.1 何谓初始化块 136

实例10-6:老同学之间的对话 137

10.4.2 静态初始化块 137

实例10-7:优先执行静态初始化块 138

10.5 使用final修饰符 139

10.5.1 用final修饰变量 139

实例10-8:使用final修饰成员变量 140

10.5.2 使用final方法 141

实例10-9:在子类中设置不重写父类中的某个方法 141

10.5.3 使用final类 142

实例10-10:设置一个不允许被任何类继承的类 142

10.6 内部类 143

10.6.1 何谓内部类 143

10.6.2 非静态内部类 144

实例10-11:设置衣服的颜色和具体位置 144

10.6.3 成员内部类 145

实例10-12:在外部类或外部类的非静态方法中实现内部类对象实例 145

10.6.4 局部内部类 146

实例10-13:使用局部内部类访问当前代码块内的常量 146

10.7 枚举类 146

10.7.1 枚举类的方法 146

10.7.2 手动实现枚举类 147

实例10-14:输出显示“秋天是一个天高云淡的季节” 147

10.7.3 枚举类型 148

实例10-15:使用枚举类型显示当前的季节 148

第11章 集合 150

11.1 Java集合概述 150

11.2 Collection接口和Iterator接口 151

11.2.1 基础知识介绍 151

11.2.2 使用Collection接口和Iterator接口 153

实例11-1:使用Collection方法操作集合中的元素 153

11.3 Set接口 154

11.3.1 基础知识介绍 154

11.3.2 使用HashSet 157

实例11-2:使用HashSet判断集合元素相同的标准 157

11.3.3 使用TreeSet类 158

实例11-3:添加、删除TreeSet中的数据 158

实例11-4:演示TreeSet的自然排序用法 159

11.3.4 使用EnumSet类 160

实例11-5:使用EnumSet保存枚举类中的值 161

11.4 List接口 161

11.4.1 List接口介绍 162

11.4.2 使用List接口和ListIterator接口 164

实例11-6:使用List根据索引来操作集合内元素 164

11.4.3 使用ArrayList和Vector类 165

实例11-7:将Vector作为“栈”功能来使用 165

11.5 Map接口 166

11.5.1 基本知识介绍 166

11.5.2 使用HashMap和Hashtable实现类 169

实例11-8:将null作为HashMap的key值和value值 169

实例11-9:使用Hashtable判断两个value是否相等 170

11.5.3 使用SortedMap接口和TreeMap实现类 171

实例11-10:使用TreeMap实现自然排序 171

11.5.4 使用类IdentityHashMap 173

实例11-11:使用类IdentityHashMap添加数据 173

11.5.5 使用类EnumMap 173

实例11-12:使用类EnumMap添加数据 174

11.6 模拟队列数据结构的Queue接口 174

11.6.1 使用类LinkedList 175

实例11-13:使用类LinkedList操作列表中的数据 175

11.6.2 处理优先级的类PriorityQueue 176

实例11-14:找出队列中的最小值 176

11.7 集合工具类Collections 177

11.7.1 排序操作 177

实例11-15:使用Collections操作List集合 177

11.7.2 查找和替换操作 178

实例11-16:使用Collections查找集合中的元素 178

11.8 其他集合类 179

11.8.1 Stack类 179

实例11-17:实现入栈和出栈操作 180

11.8.2 属性类Properties 180

第12章 常用的内置类库 182

12.1 使用StringBuffer类 182

12.1.1 StringBuffer类基础 182

12.1.2 通过append连接各种类型的数据 183

实例12-1:将“我爱,学习,Java,1个月了”等数据连接起来 183

12.1.3 在任意位置为StringBuffer添加内容 183

实例12-2:在“Java”前后分别添加“我学习”和“3个月”了 184

12.1.4 替换StringBuffer的内容 184

实例12-3:将“Hello World”中的“World”替换为“AAA” 184

12.1.5 从StringBuffer中删除指定范围的字符串 184

实例12-4:将“Hello AAA”中的“AAA”删除 184

12.2 使用Runtime类 185

12.2.1 Runtime类介绍 185

12.2.2 得到JVM的内存空间信息 186

实例12-5:查看JVM的空间情况 186

12.2.3 联合使用Runtime类与Process类 186

实例12-6:调用本机可执行程序(记事本) 186

12.3 实现程序国际化 187

12.3.1 国际化基础 187

12.3.2 使用Locale类 188

12.3.3 使用ResourceBundle类 189

实例12-7:通过ResourceBundle取得资源文件中的内容 189

12.3.4 处理动态文本 189

实例12-8:使用MessageFormat格式化动态文本 190

12.3.5 使用类代替资源文件 191

实例12-9:使用类设置资源文件的信息 191

12.4 使用System类 192

12.4.1 System类基础 192

实例12-10:计算一个程序的执行时间 192

12.4.2 通过System类获取本机的全部环境属性 193

实例12-11:获取本机的全部环境属性 193

12.4.3 垃圾对象的回收 194

实例12-12:释放观察对象 194

12.5 使用Date类 195

12.5.1 使用Date类 195

实例12-13:得到当前系统日期 195

12.5.2 使用Calendar类 196

实例12-14:获取系统的当前日期 196

12.5.3 使用DateFormat类 197

实例12-15:演示DateFormat中的默认操作 197

12.5.4 使用SimpleDateFormat类 198

实例12-16:格式化显示日期 198

12.6 几个核心类 199

12.6.1 使用Math类 199

实例12-17:使用类Math实现基本数学运算 200

12.6.2 使用Random类 200

实例12-18:生成10个不大于100的随机数字 201

12.6.3 使用NumberFormat类 201

实例12-19:格式化显示数字 202

12.6.4 使用BigInteger类 203

实例12-20:使用类BigInteger实现数学运算 203

12.6.5 BigDecimal类 204

实例12-21:实现四舍五入四则运算 204

第13章 使用泛型 206

13.1 泛型基础 206

13.1.1 泛型的好处 206

13.1.2 类型检查 207

实例13-1:输出显示BESTSELLER旗下的品牌 207

13.1.3 类型扩展 207

实例13-2:创建了一个只能存放String对象的StrList集合类 208

13.1.4 使用泛型 208

实例13-3:使用泛型改进程序 208

13.2 泛型类 209

13.2.1 定义泛型接口和类 209

实例13-4:在类中包含一个泛型声明 210

13.2.2 派生子类 210

13.2.3 并不存在泛型类 211

13.3 类型通配符 212

13.3.1 类型通配符基础 212

13.3.2 设置类型通配符的上限 213

实例13-5:绘制三个形状 213

13.3.3 设置类型形参的上限 214

13.4 泛型方法 215

13.4.1 定义泛型方法 215

实例13-6:演示泛型方法的完整用法 216

13.4.2 设置通配符下限 218

13.5 泛型接口 219

实例13-7:创建并使用泛型接口 219

第14章 异常处理 220

14.1 什么是异常 220

14.1.1 认识异常 220

14.1.2 Java提供的异常处理类 221

14.2 异常处理方式 222

14.2.1 使用try...catch处理异常 222

实例14-1:分母不能为零 222

14.2.2 处理多个异常 223

实例14-2:同时处理三种类型的异常 223

14.2.3 在异常中使用finally关键字 223

实例14-3:使用finally关键字输出异常信息 224

14.2.4 总是被执行的finally代码块 224

实例14-4:输出显示finally代码块中的内容 224

14.2.5 访问异常信息 225

实例14-5:演示程序如何访问异常信息 225

14.3 抛出异常 226

14.3.1 使用throws抛出异常 226

实例14-6:使用关键字throws处理多种异常 227

14.3.2 使用throw抛出异常 228

实例14-7:使用关键字throw将异常抛给上一级调用 228

14.4 自定义异常 228

14.4.1 Throwable类介绍 229

14.4.2 在Java程序中使用异常类 230

实例14-8:使用内置异常类处理多种异常 230

14.4.3 使用Throwable类自定义异常 231

实例14-9:编写自定义异常程序 231

第15章 文件处理 233

15.1 Java I/O基础 233

15.2 使用类File 234

15.2.1 File类中方法 234

15.2.2 使用File类创建文件 234

实例15-1:在H盘上创建一个名为“奔驰GLA.txt”的文件 234

15.2.3 使用File类删除文件 235

实例15-2:在H盘上删除名为“奔驰GLA.txt”的文件 235

15.2.4 使用类File创建文件夹 235

实例15-3:创建一个名为“奔驰Smart”文件夹 235

15.2.5 使用File类列出目录中的全部文件 236

实例15-4:使用list()方法列出一个目录中的全部内容 236

15.3 RandomAccessFile类 237

15.3.1 类RandomAccessFile的常用方法 237

15.3.2 使用类RandomAccessFile 237

实例15-5:向文件中写入数据 237

15.4 字节流与字符流 238

15.4.1 节流类和字符流类 238

15.4.2 使用字节输出流OutputStream 239

实例15-6:向文件中写入字符串 239

15.4.3 使用字节输入流InputStream 240

实例15-7:读取并显示文件中的内容 241

15.4.4 开辟指定大小的byte数组 241

实例15-8:根据文件的数据量来选择开辟空间的大小 241

实例15-9:使用方法read()读取内容 242

实例15-10:通过判断是否读到文件末尾的方式来读取文件 243

15.4.5 使用字符流类Writer写入文件内容 243

实例15-11:使用字符流Writer向文件中写入内容 244

15.4.6 使用类FileWriter追加文件的内容 245

实例15-12:向文件中追加指定的内容 245

15.5 使用类BufferedReader 245

15.5.1 类BufferedReader基础 246

实例15-13:使用方法readLine()读取用户输入的信息 246

15.5.2 使用BufferedReader类 246

实例15-14:输入两个数字,并让两个数字相加。 246

15.6 数据操作流 247

15.6.1 使用类DataOutputStream 247

实例15-15:将订单数据写入到文件order.txt中 248

15.6.2 DataInputStream类 248

实例15-16:读取文件order.txt中的订单信息 249

15.7 合并流 250

实例15-17:合并两个文件 250

15.8 压缩流 251

15.8.1 ZIP压缩输入/输出流简介 251

15.8.2 ZipOutputStream类 251

实例15-18:压缩指定的文件 252

实例15-19:压缩D盘中的文件夹www 253

15.8.3 类ZipFile 254

实例15-20:实例化ZipFile类对象 254

15.8.4 ZipInputStream类 255

实例15-21:取得www.zip中的一个ZipEntry 255

第16章 使用Annotation 256

16.1 Class类与Java反射 256

16.1.1 反射中的方法 256

16.1.2 访问构造方法 257

实例16-1:使用Constructor对象访问构造方法 258

16.1.3 访问成员变量 260

实例16-2:使用类Field访问成员变量 261

16.1.4 访问方法 262

实例16-3:使用类Method访问方法 263

16.2 使用Annotation注解 265

16.2.1 使用系统内置的Annotation 265

实例16-4:使用注解@Override 266

实例16-5:使用注解@Deprecated取消错误信息 266

实例16-6:使用@SuppressWarnings取消警告信息 267

16.2.2 自定义Annotation 267

实例16-7:访问自定义的Annotation 269

第17章 使用AWT开发GUI程序 273

17.1 AWT基础 273

17.2 容器 275

17.2.1 容器基础 275

17.2.2 使用容器中组件:Frame 275

实例17-1:使用Frame创建一个窗口 276

17.2.3 使用容器中组件:Panel 276

实例17-2:使用Panel作为容器盛装了一个文本框和一个按钮 277

17.2.4 使用容器中组件:ScrollPane 277

实例17-3:使用ScrollPane容器代替了本节前面的Panel容器 277

17.3 布局管理器 278

17.3.1 布局利器FlowLayout 278

实例17-4:使用FlowLayout布局 279

17.3.2 布局利器BorderLayout 279

实例17-5:使用BorderLayout布局 280

17.3.3 布局利器GridLayout 281

实例17-6:使用GridLayout布局 281

17.4 AWT的常用组件 282

17.4.1 AWT中的组件 282

实例17-7:使用AWT的基本组件进行各类操作 283

17.4.2 AWT中的对话框 285

实例17-8:使用模式对话框和非模式对话框 285

第18章 使用Swing开发GUI程序 287

18.1 Swing基础 287

18.2 Swing的组件 288

18.2.1 Swing组件的层次结构 288

18.2.2 Swing实现AWT组件 289

实例18-1:使用Swing组件创建窗口 290

18.2.3 Jframe、JscrollPane和边框 294

实例18-2:为Panel容器分别添加了几种边框 295

18.2.4 使用JToolBar创建工具条 296

实例18-3:实现“复制”和“粘贴”功能 297

18.2.5 使用JColorChooser和JFileChooser 299

实例18-4:实现一个颜色选择对话框效果 300

18.3 使用进度条组件 302

18.3.1 创建一个进度条 302

实例18-5:实现一个进度条效果 303

18.3.2 使用ProgressMonitor创建进度条对话框 304

实例18-6:使用SimulatedTarget模拟了一个耗时任务 304

第19章 使用JavaFX开发GUI程序 307

19.1 JavaFX介绍 307

19.1.1 JavaFX的特色 307

19.1.2 安装e(fx)clipse插件 308

19.1.3 认识第一个JavaFX程序 310

实例19-1:在JavaFX界面中输出打折信息 310

19.2 JavaFX开发基础 311

19.2.1 窗体结构 311

实例19-2:单击我提交订单 312

19.2.2 属性绑定 313

实例19-3:使用属性绑定功能 313

19.3 基本属性设置 314

19.3.1 使用Color类设置颜色 314

实例19-4:使用RGB方式设置颜色 316

实例19-5:使用Web方式设置颜色 317

19.3.2 使用Text类绘制文字 318

实例19-6:在窗体中绘制指定样式文本 319

19.4 使用Shape类绘制形状 320

19.4.1 使用Line绘制线条 320

实例19-7:使用Line绘制直线 321

19.4.2 使用Rectangle绘制矩形 322

实例19-8:绘制多个样式的矩形 322

19.5 使用面板实现界面布局 323

19.5.1 使用Pane的画布功能 324

实例19-9:在类javafx.scene.layout.Pane中绘制一个圆 324

19.5.2 使用StackPane实现特定面板功能 325

实例19-10:在面板中放置一个按钮 325

19.5.3 使用FlowPane实现序列放置 325

实例19-11:在面板中同时添加标签和文本 326

19.6 使用JavaFX UI组件 327

19.6.1 使用标签组件 327

实例19-12:使用标签组件创建有文本和图片的标签 327

19.6.2 使用按钮组件 329

实例19-13:使用按钮控制一段文本的左右移动 329

第20章 开发网络程序 331

20.1 Java中的网络包 331

20.1.1 InetAddress类详解 331

20.1.2 URLDecoder类和URLEncoder类详解 332

20.1.3 URL和URLConnection 332

20.1.4 实践演练 334

实例20-1:使用类InetAddress发送信息 335

实例20-2:图片下载系统 335

20.2 TCP编程 338

20.2.1 使用ServletSocket 338

20.2.2 使用Socket 338

实例20-3:创建一个TCP协议的服务器端 339

20.2.3 TCP中的多线程 340

实例20-4:开发一个聊天室程序 340

20.3 UDP编程 343

20.3.1 使用DatagramSocket 343

实例20-5:使用UDP开发一个聊天系统 344

20.3.2 使用MulticastSocket 345

实例20-6:实现一个基于广播的多网友用户聊天室 347

第21章 开发数据库程序 349

21.1 SQL语言基础 349

21.1.1 数据定义 349

21.1.2 数据操纵 351

21.2 JDBC基础 353

21.2.1 JDBC驱动类型 353

21.2.2 JDBC的常用接口和类 354

21.3 连接SQL Server数据库 356

21.3.1 下载并安装SQL Server 2016驱动 356

21.3.2 测试连接 358

实例21-1:连接SQL Server数据库 358

21.3.3 获取指定SQL Server数据库中的表 359

实例21-2:输出显示某个SQL Server数据库中包含的表 359

21.4 连接MySQL数据库 360

21.4.1 下载并配置MySQL驱动 360

21.4.2 将MySQL驱动加载到Eclipse 361

21.4.3 测试连接 362

实例21-3:输出显示连接MySQL数据库是否成功 362

第22章 开发多线程程序 363

22.1 线程基础 363

22.1.1 什么是线程 363

22.1.2 Java的线程模型 364

22.2 创建线程 364

22.2.1 使用Thread类创建线程 364

实例22-1:使用类Thread建立线程 365

实例22-2:设置线程名字(使用类Thread) 366

22.2.2 使用Runnable接口创建线程 367

实例22-3:设置线程名字 367

22.3 线程的生命周期 368

22.3.1 创建并运行线程 368

实例22-4:线程的创建、运行和停止三个状态之间的切换 368

22.3.2 挂起和唤醒线程 369

实例22-5:使用sleep()、suspend()和resume() 369

22.3.3 终止线程的三种方法 370

实例22-6:使用退出标志终止线程 370

22.3.4 线程阻塞 371

22.3.5 线程死亡 372

实例22-7:演示线程的死亡 372

22.4 控制线程 373

22.4.1 使用join方法 373

实例22-8:返回某个字符串指定索引的字符 373

22.4.2 使用volatile关键字 374

实例22-9:实现原子操作 374

第23章 航空订票管理系统 376

23.1 系统概述和总体设计 376

23.1.1 系统需求分析 376

23.1.2 系统demo流程 377

23.2 数据库设计 378

23.2.1 选择数据库 378

23.2.2 数据库结构的设计 378

23.3 系统框架设计 380

23.3.1 设计主界面 380

23.3.2 设计菜单 384

23.3.3 配置Hibernate访问类 386

23.3.4 系统登录模块设计 389

23.4 航班信息管理模块 391

23.4.1 添加飞机管理 391

23.4.2 添加航班管理信息 392

23.4.3 添加航班计划 393

23.5 网点管理模块 396

23.5.1 网点添加管理 396

23.5.2 删除网点管理 397

23.6 订票管理模块 398

23.6.1 网点登录管理 399

23.6.2 订票信息管理 400

23.7 系统测试 402

查看更多关于的内容

出版社其它书籍
本类热门
在线购买PDF电子书
下载此书RAR压缩包