新华一城书集店铺主页二维码
新华一城书集 微信认证
上海新华书店官方微信书店
微信扫描二维码,访问我们的微信店铺
你可以使用微信联系我们,随时随地的购物、客服咨询、查询订单和物流...

Java面向对象程序设计(第3版)

53.10
运费: ¥ 5.00-20.00
库存: 3 件
Java面向对象程序设计(第3版) 商品图0
Java面向对象程序设计(第3版) 商品图1
Java面向对象程序设计(第3版) 商品图2
Java面向对象程序设计(第3版) 商品图3
Java面向对象程序设计(第3版) 商品图4
Java面向对象程序设计(第3版) 商品缩略图0 Java面向对象程序设计(第3版) 商品缩略图1 Java面向对象程序设计(第3版) 商品缩略图2 Java面向对象程序设计(第3版) 商品缩略图3 Java面向对象程序设计(第3版) 商品缩略图4

商品详情

前 ???言

Java语言具有纯粹的面向对象的特点,非常适合于面向对象程序设计的学习。本书面向有一定的程序设计语言基础的读者,全面介绍Java语言的面向对象编程与设计技术。在第2版的基础上,基于Java语言新引入的特性,结合作者工程实践基础和20余年的Java面向对象程序设计课程的教学经验,对教材内容进行了新的修订,并增加了涵盖课程内容的32课时的微课视频。全书内容共分12章。

第1章概述了Java发展、平台、开发环境,从实例程序出发介绍Java语言的基本语法,包括标识符与关键字、数据类型、变量与赋值、运算符与表达式、枚举类型、流程控制语句等。

第2章从面向对象的概念出发,描述了类和对象在Java语言中的实现,介绍了类的封装、方法重载、类成员和实例成员、包的基本概念及UML类图等技术。

第3章介绍面向对象程序设计的继承和多态两个重要特征,描述了Java语言中类继承的实现、类中成员的访问权限控制、抽象类和接口、多态及设计模式。

第4章介绍Java的数组和字符串编程,包括数组创建、数组初始化、数组相关操作、多维数组、可变长参数、字符串、命令行参数等内容。

第5章讲解泛型与集合框架,泛型编程技术包括泛型类、泛型方法、泛型类的继承、通配符的使用等相关技术;集合框架包括集合核心接口、具体实现类和集合算法等内容。

第6章介绍Java的异常处理,包括异常机制、处理方法、自定义异常类及其使用、断言及日志机制。

第7章描述Java多任务编程,包括线程的概念、实现、控制、同步、线程池、死锁等内容。

第8章讲述Java的输入/输出处理,包括流的概念、字节流、字符流、命令行I/O、格式化I/O、对象序列化、文件I/O等的应用。

第9章讲解基于Swing的GUI编程,包括容器、组件、布局管理器、事件处理和多媒体处理等内容。

第10章介绍Java的网络编程技术,包括网络编程的基本概念、Java网络相关类、TCP通信、UDP通信、使用URL进行网络通信的方法,以及与服务器端交互等具体应用。

第11章介绍Java访问数据库的编程技术,包括SQL语言基础、JDBC、SQLite数据库等的具体应用。

第12章介绍使用第三方类库的编程技术,包括Maven构建工具的使用、常用的第三方类库、通过第三方类库实现JSON数据操作、生成统计图、处理Word文件等实用性应用功能的开发。

本书定位于面向对象程序设计的教学,因此对Java语言的相关特性做了取舍。例如,函数式编程仅引入了Lambda表达式,并未展开对Stream API、函数式接口等内容的详细描述;对于Java的反射、正则表达式、JavaFX等内容也没有涉及。本书对Java的后继学习给出了一些建议,有兴趣的读者可扫描下方二维码。

本书第1、4、5、6、10、11、12章由陈旭东编写和修订,第2、3、7、8、9章由马迪芳编写和修订。徐保民和魏小涛对本书内容提出了建设性的意见并参与了相关案例的选择和代码的调试。全书最后由陈旭东负责定稿。

本书的出版得到了北京交通大学出版社谭文芳老师的大力支持,北京交通大学继续教育学院为课程内容的微课录制和编辑提供了极大的帮助,北京交通大学软件学院、计算机与信息技术学院、网络空间安全学院、继续教育学院相关课程的老师也对本书的编写提出了宝贵意见,在此表示深深的谢意。

本书内容可能存在不足和错误,恳请各位读者不吝赐教。联系作者的电子邮箱为:chenxd@bjtu.edu.cn(陈旭东)和dfma@bjtu.edu.cn(马迪芳)。

编 ?者

2025年10月

本书以面向对象分析与设计思想为核心,讲述Java面向对象程序设计的主要技术。本书以最新版本JavaSE为基础,全面介绍Java语言基础知识、面向对象编程技术、UML、异常、断言与日志、输入输出、泛型、集合框架、Lambda表达式、多线程、图形用户界面、网络编程、使用第三方类库等内容。各章提供经过调试运行的实例,并在相关章节中附有配套练习题。

目 ???录

第1章 ?Java语言基础1

1.1 ?Java语言简介1

1.1.1 ?Java发展1

1.1.2 ?Java平台2

1.1.3 ?Java开发环境2

1.2 ?简单的Java程序4

1.2.1 ?编辑Java源文件4

1.2.2 ?编译源程序4

1.2.3 ?运行Java应用程序5

1.2.4 ?程序分析5

1.3 ?关键字与标识符8

1.3.1 ?关键字8

1.3.2 ?标识符8

1.4 ?数据类型9

1.4.1 ?整数类型10

1.4.2 ?浮点类型10

1.4.3 ?字符类型10

1.4.4 ?布尔类型11

1.5 ?变量声明与赋值11

1.6 ?运算符与表达式12

1.6.1 ?算术运算12

1.6.2 ?关系运算12

1.6.3 ?布尔运算13

1.6.4 ?位运算13

1.6.5 ?其他运算14

1.6.6 ?运算符的优先级与结合性15

1.6.7 ?类型转换15

1.6.8 ?表达式16

1.7 ?枚举类型17

1.8 ?流程控制17

1.8.1 ?if语句17

1.8.2 ?switch语句18

1.8.3 ?while语句20

1.8.4 ?do…while语句20

1.8.5 ?for语句20

1.8.6 ?流程转移语句22

习题23

第2章 ?类和对象25

2.1 ?面向对象的软件开发过程25

2.2 ?类和对象的基本概念25

2.3 ?类的定义26

2.3.1 ?定义类26

2.3.2 ?属性27

2.3.3 ?构造方法28

2.3.4 ?方法28

2.4 ?对象的使用31

2.4.1 ?创建对象31

2.4.2 ?使用对象31

2.5 ?封装33

2.5.1 ?封装与信息隐藏33

2.5.2 ?Getter和Setter方法33

2.6 ?方法重载34

2.7 ?this关键字36

2.7.1 ?使用当前对象36

2.7.2 ?调用构造方法37

2.8 ?类成员和实例成员38

2.8.1 ?类属性和实例属性38

2.8.2 ?类方法和实例方法38

2.8.3 ?类属性和实例属性的初始化40

2.9 ?包和模块41

2.9.1 ?包42

2.9.2 ?模块43

2.10 ?嵌套类44

2.10.1 ?静态嵌套类44

2.10.2 ?内部类45

2.10.3 ?局部类47

习题49

第3章 ?继承和多态50

3.1 ?类的继承50

3.1.1 ?继承概念50

3.1.2 ?继承实现50

3.1.3 ?方法覆盖51

3.1.4 ?super关键字52

3.1.5 ?类型转换55

3.1.6 ?java.lang.Object类57

3.1.7 ?final关键字61

3.2 ?访问控制62

3.2.1 ?私有访问权限63

3.2.2 ?包访问权限63

3.2.3 ?子类访问权限64

3.2.4 ?公共访问权限65

3.3 ?抽象类与接口65

3.3.1 ?抽象类66

3.3.2 ?接口定义67

3.3.3 ?接口实现68

3.3.4 ?使用接口类型69

3.4 ?多态70

3.4.1 ?继承与多态71

3.4.2 ?接口与多态72

3.4.3 ?多态的优点73

3.5 ?设计模式74

3.5.1 ?单例模式74

3.5.2 ?策略模式75

习题77

第4章 ?数组与字符串79

4.1 ?数组79

4.1.1 ?创建数组79

4.1.2 ?访问数组元素80

4.1.3 ?数组初始化81

4.1.4 ?数组参数与返回数组82

4.2 ?数组的基本操作84

4.2.1 ?数组复制84

4.2.2 ?数组比较86

4.2.3 ?数组排序87

4.2.4 ?数组查找91

4.3 ?多维数组93

4.4 ?可变参数的方法95

4.5 ?字符串96

4.5.1 ?String96

4.5.2 ?StringBuffer 和 StringBuilder98

4.6 ?命令行参数99

习题100

第5章 ?泛型与集合框架101

5.1 ?泛型101

5.1.1 ?泛型类型101

5.1.2 ?泛型方法104

5.1.3 ?有界类型参数105

5.1.4 ?泛型类型的继承107

5.1.5 ?通配符108

5.1.6 ?类型擦除112

5.2 ?集合框架简介115

5.2.1 ?集合接口115

5.2.2 ?集合实现117

5.2.3 ?集合算法117

5.3 ?集合实现118

5.3.1 ?ArrayList119

5.3.2 ?HashSet122

5.3.3 ?HashMap124

5.3.4 ?LinkedList126

5.4 ?集合算法128

5.4.1 ?数据操作129

5.4.2 ?排序129

5.4.3 ?查找130

习题132

第6章 ?异常处理机制133

6.1 ?异常133

6.1.1 ?异常分类133

6.1.2 ?常用标准异常类134

6.2 ?异常处理135

6.2.1 ?捕获异常135

6.2.2 ?方法声明抛出异常137

6.2.3 ?抛出异常138

6.2.4 ?异常链139

6.2.5 ?覆盖抛出异常的方法140

6.3 ?自定义异常141

6.3.1 ?创建自定义异常类142

6.3.2 ?使用自定义异常142

6.4 ?日志143

6.4.1 ?日志记录器143

6.4.2 ?使用全局日志记录器144

6.4.3 ?使用自定义日志记录器145

6.4.4 ?Java主流日志工具146

6.5 ?断言146

6.5.1 ?断言编译147

6.5.2 ?打开与关闭断言147

6.5.3 ?断言应用148

习题150

第7章 ?线程151

7.1 ?线程的概念151

7.2 ?线程的实现151

7.2.1 ?继承Thread类152

7.2.2 ?实现Runnable接口153

7.2.3 ?实现Callable接口155

7.2.4 ?使用Lambda表达式156

7.2.5 ?线程的生命周期157

7.3 ?线程的控制158

7.3.1 ?暂停线程执行158

7.3.2 ?等待线程结束158

7.3.3 ?中断线程执行159

7.3.4 ?线程优先级161

7.3.5 ?Daemon线程161

7.4 ?多线程同步162

7.4.1 ?原子操作162

7.4.2 ?原子变量163

7.4.3 ?基于对象锁的线程同步164

7.4.4 ?wait()和notify()167

7.5 ?线程池170

7.5.1 ?Callable和Future170

7.5.2 ?Executor接口171

7.5.3 ?线程池171

7.6 ?死锁问题174

习题174

第8章 ?输入/输出176

8.1 ?流的概念176

8.1.1 ?输入流和输出流176

8.1.2 ?字节流和字符流176

8.1.3 ?节点流和处理流177

8.2 ?字节流177

8.2.1 ?InputStream类178

8.2.2 ?OutputStream类178

8.2.3 ?字节流应用示例179

8.3 ?字符流181

8.3.1 ?Reader类181

8.3.2 ?Writer类182

8.3.3 ?字符流应用示例182

8.4 ?命令行I/O183

8.4.1 ?标准流183

8.4.2 ?控制台184

8.5 ?格式化I/O185

8.5.1 ?格式化输入185

8.5.2 ?格式化输出188

8.6 ?对象的序列化和反序列化189

8.7 ?随机访问文件192

8.8 ?文件NIO195

8.8.1 ?Path接口195

8.8.2 ?文件和目录198

8.8.3 ?文件和目录操作200

8.8.4 ?文件读写201

8.8.5 ?文件和目录属性203

8.8.6 ?目录遍历204

习题208

第9章 ?图形用户界面210

9.1 ?Swing概述210

9.2 ?Swing容器210

9.2.1 ?顶层容器JFrame211

9.2.2 ?顶层容器JDialog212

9.2.3 ?通用容器JPanel214

9.2.4 ?通用容器JScrollPane215

9.2.5 ?通用容器JSplitPane216

9.2.6 ?通用容器JToolBar218

9.3 ?Swing组件218

9.3.1 ?标签219

9.3.2 ?按钮220

9.3.3 ?复选框221

9.3.4 ?单选按钮221

9.3.5 ?列表框223

9.3.6 ?组合框224

9.3.7 ?文本输入225

9.3.8 ?进度条227

9.3.9 ?菜单228

9.4 ?布局管理器232

9.4.1 ?BorderLayout232

9.4.2 ?FlowLayout233

9.4.3 ?BoxLayout234

9.4.4 ?GridLayout235

9.4.5 ?CardLayout236

9.4.6 ?GridBagLayout238

9.5 ?事件处理241

9.5.1 ?事件处理机制241

9.5.2 ?事件适配器243

9.5.3 ?内部监听器245

9.5.4 ?匿名监听器245

9.5.5 ?事件处理实例247

9.6 ?多媒体251

9.6.1 ?绘图252

9.6.2 ?基本图形252

9.6.3 ?颜色和字体253

9.6.4 ?图像254

9.6.5 ?动画257

习题259

第10章 ?网络通信260

10.1 ?网络基本概念260

10.1.1 ?TCP协议260

10.1.2 ?UDP协议261

10.1.3 ?IP地址和端口261

10.2 ?Java网络功能262

10.2.1 ?网络接口层262

10.2.2 ?网络层263

10.2.3 ?传输层265

10.2.4 ?应用层266

10.3 ?基于TCP的网络通信266

10.3.1 ?TCP服务器267

10.3.2 ?TCP客户端268

10.3.3 ?处理多客户请求271

10.4 ?基于UDP的网络通信274

10.4.1 ?UDP服务器275

10.4.2 ?UDP客户端276

10.4.3 ?多播通信278

10.5 ?使用URL282

10.5.1 ?创建URL对象283

10.5.2 ?解析URL284

10.5.3 ?读取URL资源内容284

10.5.4 ?使用URL连接285

10.5.5 ?与Servlet交互287

习题290

第11章 ?访问数据库292

11.1 ?SQL语言292

11.1.1 ?关系数据库简介292

11.1.2 ?SQL语言292

11.2 ?JDBC概述294

11.3 ?使用JDBC访问数据库295

11.4 ?使用SQLite数据库298

11.4.1 ?SQLite简介298

11.4.2 ?SQLite数据库基本操作299

11.4.3 ?使用带参数的SQL语句302

11.5 ?使用ResultSet更新数据库304

习题306

第12章 ?使用第三方类库307

12.1 ?Maven构建工具307

12.1.1 ?Maven仓库308

12.1.2 ?Maven项目结构309

12.1.3 ?简单Maven项目实例309

12.2 ?常用的第三方类库313

12.3 ?使用JSON数据314

12.3.1 ?JSON基本语法314

12.3.2 ?JSON数据解析与生成314

12.4 ?使用统计图318

12.5 ?处理Word文件324

习题328

参考文献330

新华一城书集店铺主页二维码
新华一城书集 微信公众号认证
上海新华书店官方微信书店
扫描二维码,访问我们的微信店铺
随时随地的购物、客服咨询、查询订单和物流...

Java面向对象程序设计(第3版)

手机启动微信
扫一扫购买

收藏到微信 or 发给朋友

1. 打开微信,扫一扫左侧二维码

2. 点击右上角图标

点击右上角分享图标

3. 发送给朋友、分享到朋友圈、收藏

发送给朋友、分享到朋友圈、收藏

微信支付

支付宝

扫一扫购买

打开微信,扫一扫

或搜索微信号:xhbookmall
新华一城书集微书店官方微信公众号

收藏到微信 or 发给朋友

1. 打开微信,扫一扫左侧二维码

2. 点击右上角图标

点击右上角分享图标

3. 发送给朋友、分享到朋友圈、收藏

发送给朋友、分享到朋友圈、收藏