书名:Java程序设计应用开发 书号:978-7-113-29847-0
作者:张西广,夏敏捷,罗菁 编著 出版日期:2023年1月
目前学习和关注 Java 语言的人越来越多,Java 语言已是目前世界上最为流行的程序开发语言之一。由于具有功能丰富、表达能力强、使用方便灵活、执行效率高、跨平台、可移植性好等优点,Java 成为编程学习的首选语言之一。
学习编程是一个实践的过程,而不仅仅是看书、看资料的过程,动手编写、调试程序才是至关重要的。通过实际的编程以及积极思考,读者可以很快掌握编程技术,在编程过程中能够积累许多宝贵的实践经验,这对编程人员来说尤为重要。
本书主要介绍Java语言的基础知识,包括Java语言基本数据类型、逻辑控制语句、面向对象程序设计、异常处理、Java常用类、Java集合、图形化用户界面、多线程、网络编程、I/O(输入/输出)和数据库开发等知识,读者通过学习可以掌握Java语言的基本知识内容和程序编写方法。本书从基本的程序设计思想入手,逐步展开Java语言教学。对每个知识点,使用多个实用例子进行描述和说明,例子选取贴近生活,增加读者对知识点的理解。本书注重程序设计能力的培养和项目实践,每章后提供综合性案例实践,同时纳入了Java的新功能,增强了实用性,使读者掌握Java的精髓。
本书最大的特色在于以开发案例为导向,让读者对 Java 语言学习充满乐趣,在案例设计开发过程中,不知不觉地学会这些技术;通过学习本书,读者将学会 Java 编程技术和技巧,学会面向对象的设计技术,了解程序设计的相关知识。本书部分案例如酒店客房管理、网络五子棋游戏、Java 图形处理、JDBC 应用案例,由于篇幅限制进行数字化处理,读者可扫二维码阅读设计思路和相关代码。
《Java程序设计应用开发》 1
第1章 Java概述 1
1.1 认识Java. 1
1.1.1 什么是Java. 1
1.1.2 Java语言的特点... 3
1.1.3 Java语言的应用... 4
1.2 JDK的使用... 5
1.2.1 JDK的安装... 5
1.2.2 Java程序运行机制... 8
1.2.3 Java程序的开发过程... 10
1.3 Java语言的集成开发环境... 11
1.3.1 Eclipse. 11
1.3.2 NetBeans. 17
1.3.3 IntelliJ IDEA.. 17
第2章 Java编程基础 18
2.1 标识符与数据类型... 18
2.1.1 关键字... 18
2.1.2 标识符... 18
2.1.3 数据类型... 19
2.2 常量与变量... 20
2.2.1 常量... 20
2.2.2 变量... 22
2.3 运算符和表达式... 23
2.3.1 算术运算符和算术表达式... 24
2.3.2 赋值运算符和赋值表达式... 25
2.3.3 关系运算符和关系表达式... 26
2.3.4 逻辑运算符和逻辑表达式... 27
2.3.5 位运算符和位运算表达式... 27
2.3.6 条件运算符和条件表达式... 30
2.3.7 运算符优先级... 30
2.3.8 类型转换... 31
2.3.9 打印语句... 32
2.3.10 Java语言注释... 33
2.4 逻辑控制语句... 33
2.4.1 选择结构语句... 34
2.4.2 循环结构语句... 37
2.4.3 循环的嵌套... 43
2.4.4 跳转语句... 44
2.4.5 三种循环的比较... 46
2.5 Java数组和应用... 46
2.5.1 Java数组定义和创建... 47
2.5.2 使用数组... 49
2.5.3 多维数组... 53
*2.5.4 Arrays类... 56
2.6 Java方法... 58
2.6.1 什么是方法... 58
2.6.2 方法的重载... 59
2.7 习题... 60
第3章 Java面向对象基础 62
3.1 面向对象程序设计的思想和概念... 62
3.1.1 类和对象的概念... 62
3.1.2 面向对象的三大特性... 63
3.1.3 面向对象和面向过程的区别... 64
3.2 Java语言的类和对象... 67
3.2.1 类的定义... 67
3.2.2 对象的创建与使用... 68
3.3 构造方法... 71
3.4 this关键字... 75
3.3.1 使用this关键字访问成员变量... 75
3.3.2 使用this关键字调用构造方法... 76
3.5 static关键字... 77
3.5.1 静态成员变量... 77
3.5.2 静态方法... 78
3.5.3 静态代码块... 79
3.6 包... 80
3.7 应用案例——模拟猜拳游戏... 82
.. 86
习题... 86
第4章 Java面向对象高级特性 87
4.1 继承... 87
4.1.1 继承的基本概念... 87
4.1.2 继承的实现... 88
4.1.3 子类的构成... 91
4.1.4 成员的访问权限控制... 93
4.1.5 方法的重写... 96
4.1.6 子类对象的构造... 98
4.2 final关键字... 100
4.2.1 final类... 100
4.2.2 final方法... 100
4.2.3 final关键字修饰变量... 100
4.3 多态... 101
4.3.1 多态性的概念... 101
4.3.2 对象类型的转换... 103
4.3.3 instanceof关键字... 104
4.3.4 多态的好处... 105
4.4 抽象类和接口... 106
4.4.1 抽象类和抽象方法... 106
4.4.2 接口... 108
4.4.3 接口的用法... 109
4.5 Object类... 113
4.5.1 toString()方法... 113
4.5.2 equals()方法... 115
4.6 内部类... 116
4.6.1 成员内部类... 116
4.6.2 方法内部类... 117
4.6.3 匿名内部类... 118
4.7 应用案例——学生和教师信息管理程序... 119
习题... 122
第5章 Java异常处理 123
5.1 异常概述... 123
5.2 Java异常类介绍... 124
5.2.1 Java异常类层次结构... 124
5.2.2 常用异常类... 125
5.3 Java捕获异常... 127
5.3.1 try...catch语句捕获异常... 127
5.3.2 try...catch...finally语句捕获异常... 128
5.3.3 多catch语句捕获异常... 129
5.3.4 try语句嵌套捕获异常... 130
5.4 Java抛出异常... 131
5.4.1 throws抛出异常... 131
5.4.2 throw抛出异常... 132
5.4 Java自定义异常... 133
习题... 134
第6章 Java 常用类 135
6.1 字符串类... 135
6.1.1 String类的初始化... 135
6.1.2 String类的常见操作... 136
6.1.3 StringBuffer类... 142
6.1.4 StringBuilder类... 143
6.2 Math类与Random类... 144
6.2.1 用Math类实现数值运算... 144
6.2.2 实现随机数... 146
6.3 包装类... 147
6.4.1 认识包装类... 147
6.4.2 通过包装类进行数据转换... 147
6.4 常用系统类... 150
6.4.1 System类... 150
6.4.2 Runtime类... 151
6.5 日期类... 153
6.5.1 Date类... 153
6.5.2 Calendar类... 153
6.5.3 SimpleDateFormat类格式化日期... 155
6.6 查看Java API文档... 156
6.7 应用案例——猜单词游戏... 157
习题... 159
第7章 Java集合 160
7.1 集合概述... 160
7.2 List集合... 161
7.2.1 ArrayList 162
7.2.2 LinkedList 165
7.2.3 Vector 166
7.2.4 遍历集合... 168
7.2 Set集合... 170
7.2.1 HashSet 171
7.2.2 TreeSet 174
7.3 Map集合... 176
7.3.1 HashMap. 177
7.3.2 TreeMap. 179
7.4 泛型简化集合操作... 179
7.4.1 泛型的意义... 180
7.4.2 泛型的使用... 180
7.5 使用Collections类对集合进行处理... 182
7.6 应用案例——教学课程管理... 184
习题... 185
第8章 图形用户界面开发 186
8.1 AWT和Swing简介... 186
8.1.1 AWT简介... 186
8.1.2 Swing基础... 187
8.2 创建窗口... 188
8.2.1 用JFrame框架类开发窗口... 188
8.2.2 用JDialog对话框类开发窗口... 190
8.3 Swing组件... 191
8.3.1 按钮(JButton)... 191
8.3.2 单选按钮(JRadioButton)... 192
8.3.3 复选框(JCheckBox)... 194
8.3.4 组合框(JComboBox)... 195
8.3.5 列表框(JList)... 196
8.3.6 文本框(JTextField和JPasswordField)和标签(JLabel)... 198
8.3.7 面板(JPanel)... 199
8.3.8 消息提示框(JOptionPane)... 201
8.3.9 菜单... 202
8.4 布局管理器... 204
8.4.1 布局管理器概述... 204
8.4.2 流布局管理器FlowLayout 204
8.4.3 边界布局BorderLayout 205
8.4.4 网格布局管理器GridLayout 206
8.4.5 卡片布局管理器CardLayout 207
8.4.6 空布局管理器(绝对布局)... 208
8.5 常用事件处理... 209
8.5.1 事件处理机制... 209
8.5.2 鼠标事件处理... 210
8.5.3 键盘事件处理... 213
8.5.4 动作事件处理... 215
8.5.5 选项事件处理... 217
8.6 应用案例——用户管理系统的登录和用户注册... 218
1. 保存注册信息... 219
2. 登录界面... 219
3. 用户注册... 221
习题... 223
第9章 多线程 225
9.1 线程的概念... 225
9.1.1 进程... 225
9.1.1 多线程... 226
9.2 线程的创建... 227
9.2.1 继承Thread类创建线程... 227
9.2.2 实现Runnable接口创建线程... 232
9.2.3 创建线程的两种方法的比较... 233
9.3 线程的调度与线程控制... 233
9.3.1 线程优先级与线程调度策略... 233
9.3.2 线程的基本控制... 235
*9.4 线程同步... 236
9.4.1 多线程并发操作中的问题... 236
9.4.2 对象锁及其操作... 238
*9.4.3 同步方法... 240
*9.4.4 死锁... 241
9.5 应用案例——使用多线程模拟龟兔赛跑... 242
习题... 244
第10章 Java网络程序设计 245
10.1 网络编程基础... 245
10.1.1 互联网TCP/IP协议... 245
10.1.2 IP协议... 246
10.1.3 TCP和UDP协议... 246
10.1.4 端口... 246
10.1.6 Socket 246
10.2 UDP编程... 248
10.2.1 UDP简介... 248
10.2.2 DatagramPacket类... 249
10.2.3 DatagramSocket类... 250
10.3 TCP编程... 252
10.3.1 Socket技术... 252
10.3.2 InetAddress类简介... 253
10.3.3 ServerSocket类... 254
10.3.4 Socket类... 257
习题... 259
第11章 I/O(输入/输出) 260
11.1 认识I/O(输入/输出)操作... 260
11.2 File类... 260
11.2.1 创建File对象... 261
11.2.2 File类的常用方法... 261
11.3 文件操作... 265
11.3.1 字节流... 265
11.3.2 FileInputStream读文件... 267
11.3.3 FileOutputStream写文件... 269
11.3.4 DataInputStream和DataOutputStream.. 270
11.3.5 字符流... 271
11.3.6 FileReader和FileWriter 274
11.3.7 缓冲流... 275
11.4 应用案例——查单词软件... 276
习题... 278
第12 章 JDBC技术 279
12.1 数据库概述... 279
12.1.1 MySQL数据库... 279
12.1.2 MySQL安装配置... 280
12.1.3 安装可视化工具... 281
12.1.4 创建数据库... 281
12.2 SQL语法... 282
12.3 JDBC.. 284
12.3.1 JDBC体系结构... 284
12.3.2 JDBC驱动程序的实现方式... 285
12.4 JDBC连接数据库... 285
12.4.1 JDBC API的主要类和接口... 286
12.4.2 连接数据库... 287
12.5 JDBC访问数据库... 289
12.5.1 Statement对象... 289
12.5.2 PreParedStatement 290
12.5.3 管理结果集... 294
习题 298