目录
第1章开启Java之旅——初识Java1
1.1Java语言简介1
1.1.1Java语言的诞生和发展1
1.1.2Java语言的特点2
1.1.3Java语言的工作机制3
1.2搭建Java开发环境4
1.2.1下载和安装JDK4
1.2.2下载和安装IntelliJ IDEA6
1.2.3编写第一个Java程序7
1.3AI辅助编程9
1.3.1AI辅助编程简介9
1.3.2CodeGeeX的应用10
本章小结14
本章习题14
第2章夯实编程基石——Java语言基础16
2.1标识符和关键字16
2.1.1标识符16
2.1.2关键字17
2.2数据类型17
2.2.1基本数据类型18
2.2.2引用数据类型20
2.3常量和变量21
2.3.1常量21
2.3.2变量22
2.4数据类型转换23
2.4.1自动类型转换23
2.4.2强制类型转换24
2.5运算符和表达式26
2.5.1算术运算符及表达式26
2.5.2关系运算符及表达式27
2.5.3逻辑运算符及表达式28
2.5.4赋值运算符及表达式30
2.5.5条件运算符及表达式30
2.5.6位运算符及表达式30
2.5.7运算符的优先级32
2.6分支语句32
2.6.1if语句33
2.6.2switch语句37
2.7循环语句39
2.7.1while语句40
2.7.2dowhile语句40
2.7.3for语句41
2.7.4循环嵌套42
2.8跳转语句44
2.8.1break语句44
2.8.2continue语句45
2.9数组48
2.9.1一维数组48
2.9.2数组常用方法51
2.9.3二维数组53
2.10阶段项目55
2.10.1项目21奖学金评定系统55
2.10.2项目22ATM 取款系统56
2.10.3项目23商品销量排行榜56
本章小结56
本章习题56
第3章走进抽象世界——面向对象程序设计59
3.1面向对象概述59
3.1.1面向对象相关概念59
3.1.2面向对象的基本特性60
3.2类与对象61
3.2.1类的定义61
3.2.2对象的创建和使用63
3.3方法重载66
3.4构造方法67
3.5继承70
3.5.1继承的概念70
3.5.2继承的实现70
3.5.3方法的重写72
3.5.4super关键字73
3.5.5构造方法的继承74
3.6多态76
3.6.1多态概述76
3.6.2对象类型转换77
3.7抽象类和接口79
3.7.1抽象类79
3.7.2接口81
3.7.3抽象类与接口的区别83
3.8包84
3.8.1包的创建84
3.8.2包的导入85
3.9访问控制权限86
3.10阶段项目89
3.10.1项目31简易图书管理系统89
3.10.2项目32海洋生物馆模拟系统89
3.10.3项目33智能自助购物89
本章小结89
本章习题90
第4章打造高效工具箱——Java常用类95
4.1Object类95
4.2字符串类97
4.2.1String类97
4.2.2StringBuffer类103
4.3Math类106
4.4Random类108
4.5日期相关的类110
4.5.1LocalDate类和LocalTime类110
4.5.2LocalDateTime类112
4.5.3DateTimeFormatter类114
4.6Lambda表达式115
4.7Java API 文档使用116
4.8阶段项目118
4.8.1项目41电子衣橱118
4.8.2项目42随机抽奖118
4.8.3项目43会议通知发布118
本章小结118
本章习题119
第5章从容化解风险——异常处理121
5.1异常处理概述121
5.1.1异常的概念121
5.1.2异常的分类122
5.2异常处理机制124
5.2.1异常的捕获124
5.2.2异常的抛出(throw)127
5.2.3异常的声明(throws)128
5.3自定义异常类129
5.4阶段项目132
5.4.1项目51银行账户提款132
5.4.2项目52用户注册132
本章小结132
本章习题133
第6章所见即所得——图形用户界面设计136
6.1Swing概述136
6.1.1AWT和Swing136
6.1.2Swing介绍136
6.2容器137
6.2.1顶层容器(JFrame类)137
6.2.2中间容器(JPanel类)139
6.3常用组件141
6.3.1标签组件141
6.3.2按钮组件142
6.3.3文本组件145
6.3.4下拉框组件149
6.3.5对话框组件149
6.4布局管理器152
6.4.1流式布局(FlowLayout类)152
6.4.2边界布局(BorderLayout类)155
6.4.3网格布局(GridLayout类)156
6.5事件处理158
6.5.1事件处理机制158
6.5.2动作事件(ActionEvent类)160
6.5.3键盘事件(KeyEvent类)163
6.5.4焦点事件(FocusEvent类)165
6.5.5鼠标事件(MouseEvent类)167
6.5.6窗口事件(WindowEvent类)170
6.6阶段项目172
6.6.1项目61简易计算器172
6.6.2项目62调查问卷系统172
6.6.3项目63简单待办事项管理器172
本章小结172
本章习题173
第7章组织数据的艺术——集合与泛型176
7.1集合框架176
7.2Collection接口177
7.3List接口及子类实现177
7.3.1List接口177
7.3.2List接口的子类实现178
7.4泛型181
7.4.1泛型的基本概念181
7.4.2泛型的简单应用183
7.5集合遍历184
7.5.1Iterator迭代器遍历184
7.5.2foreach循环 186
7.6Set接口及其子类实现187
7.6.1Set接口187
7.6.2Set接口的子类实现187
7.7Map接口及其子类实现190
7.7.1Map接口190
7.7.2Map接口的子类实现191
7.8阶段项目194
7.8.1项目71简单留言板应用194
7.8.2项目72音乐播放器播放列表194
7.8.3项目73电商促销实时监控系统195
7.8.4项目74智能快递分拣系统195
本章小结195
本章习题196
第8章让数据自由流动——I/O流198
8.1流的概述198
8.2字节流199
8.2.1InputStream类和OutputStream类199
8.2.2FileInputStream类和FileOutputStream类200
8.2.3DataInputStream类和DataOutputStream类202
8.3字符流204
8.3.1Reader类和Writer类205
8.3.2FileReader类和FileWriter类206
8.3.3BufferedReader类和BufferedWriter类207
8.4打印流209
8.5File类211
8.6文件的随机访问214
8.7标准输入/输出流216
8.8对象序列化219
8.9阶段项目221
8.9.1项目81频格式转换器221
8.9.2项目82文本文件统计工具221
8.9.3项目83员工管理系统221
本章小结222
本章习题222
第9章让程序并行起舞——多线程224
9.1线程与进程224
9.2线程的创建225
9.2.1继承Thread类225
9.2.2实现Runnable接口226
9.3线程的控制229
9.3.1线程的生命周期229
9.3.2线程的优先级230
9.3.3线程的调度231
9.4线程的同步236
9.4.1线程同步概述236
9.4.2同步方法238
9.4.3同步代码块239
9.5线程的通信240
9.5.1生产者—消费者模型240
9.5.2线程通信的方式240
9.6阶段项目243
9.6.1项目91计时器243
9.6.2项目92抢红包243
9.6.3项目93智能公交调度243
本章小结243
本章习题243
第10章数据驱动应用——数据库编程247
10.1数据库基础知识247
10.1.1JDBC概述247
10.1.2MySQL数据库248
10.2创建数据库及数据表255
10.3访问数据库259
10.3.1加载JDBC驱动程序259
10.3.2建立数据库连接260
10.3.3执行SQL语句263
10.4阶段项目272
10.4.1项目101个人阅读挑战追踪器272
10.4.2项目102智能健康饮食管理系统272
本章小结272
本章习题272
第11章编织无形之网——网络编程276
11.1网络编程技术基础276
11.1.1网络编程概述276
11.1.2常见的软件架构276
11.1.3网络编程三要素277
11.1.4网络协议278
11.2Java常用网络编程类278
11.2.1InetAddress类278
11.2.2URL类280
11.3TCP网络编程281
11.3.1套接字(Socket)281
11.3.2Socket间的通信283
11.4UDP网络编程287
11.4.1UDP简介287
11.4.2UDP数据报的发送与接收287
11.5阶段项目291
11.5.1项目111聊天室291
11.5.2项目112智能家居控制器291
本章小结292
本章习题292
第12章综合项目——爱心捐赠管理系统295
12.1项目概述295
12.1.1项目背景295
12.1.2项目目标295
12.1.3技术栈295
12.2系统架构296
12.2.1功能模块296
12.2.2数据库设计296
12.3详细设计298
12.3.1用户管理模块298
12.3.2捐赠管理模块299
12.3.3物资分配模块299
12.4AI优化建议301
12.4.1架构分层优化301
12.4.2功能补全优化301
12.4.3安全性与健壮性302
12.4.4代码质量优化303
本章小结303
本章习题304
参考文献305
