Java语言程序设计(第5版)

Java语言程序设计(第5版)"

作者:张驰、邵丽萍
ISBN:9787302589518
定价:¥69
字数:千字
页数:
出版时间:2021.10.01
开本:
版次:5-1
装帧:
出版社:清华大学出版社
简介

Java不仅是近年来十分流行的程序设计语言之一,还是一门通用的网络编程语言,在Internet上有着广泛的应用。本书全面介绍了Java语言的功能和特点,主要内容包括Java语言基础知识、Java语法构成、面向对象编程技术、常用系统类的使用、图形用户界面设计、图形与多媒体处理、异常处理、多线程技术和访问数据库技术等内容。

本书以通俗易懂的语言介绍了大量的实例,从实用的角度解释了Java面向对象编程思想,介绍了Java编程技巧。

本书不仅适合没有编程经验的读者学习,也适合有一定程序语言基础的读者自学,还可作为高等院校或计算机培训班学生的教材。

前言

Java是目前推广速度最快的程序设计语言之一,它采用面向对象的编程技术,功能强大而又简单易学,深受广大程序设计人员的偏爱。Java伴随着Internet问世,随着Internet的发展而成熟。Java是精心设计的语言,它具有简单性、面向对象性、平台兼容性、安全性和健壮性等诸多特点,内置了多线程和网络支持能力,可以说它是网络世界的通用语言。为了迎接信息时代的挑战,学习和掌握Java语言无疑会带来更多的机遇。

本书具有简单易学、理论和实例结合的特点,使读者很容易接受Java语言的概念和设计方法,很快地编写出合格的面向对象程序来解决一些简单的实际问题。一些抽象的很难理解的内容,如类、对象、继承、多态、异常、多线程等,在本书中都通过通俗易懂的方式进行了简化。使用本书学习,读者将会发现Java语言并不难掌握。书中所有的程序都可上机运行,便于读者通过实际上机运行来体会Java的原理、功能与作用。

本书前四版受到读者的欢迎,还被评为“第七届全国高校出版社优秀畅销教材一等奖”“普通高等教育‘十一五’国家级规划教材”等。由于Java在不断发展,为了体现Java的新特点,答谢读者的喜爱,满足读者的需要,作者对本书进行了修订。作为一本教材,本书第5版保留第4版的基本框架,在内容的编排上体现了新的计算机教学思想和方法,以“提出问题—解决问题—归纳必要的结论和概念”的方式介绍Java的编程思路,通过大量的实例和插图,使读者尽可能快地熟悉基本概念和掌握基本编程方法。结构上,第1~3章为程序设计基础知识,第4章和第5章为面向对象程序编程知识,第6~8章是异常、泛型、集合、常用类介绍,第9~13章是综合应用程序开发知识,体现了深入浅出、由简到繁、循序渐进的特点。

本书主要特色如下。

1. 通俗易懂、图文并茂

本书通过具体的例子介绍有关Java语言的概念、方法和技术,每章都用大量完整的例子说明使用Java语言编程的基本步骤和基本方法,并有图片配合说明,通俗易懂,读者完全可以按书中介绍的方法运行每个程序实例,通过实例理解Java语言的基本思想和编程技巧。

2. 内容全面、结构清晰

本书对整个内容做了精心设计和安排,首先介绍Java语言字符模式的编程方法,然后介绍使用图形用户界面的编程方法。循序渐进、先易后难、逐步深入,通过具体实例引出后续内容或巩固前面介绍的内容。在“知识拓展”一节介绍一些Java语言的新特性与抽象概念,为读者深入了解Java语言指出学习方向。

3. 循序渐进

本书首先从Java语言的产生、特点、结构开始介绍,然后介绍如何得到Java语言的开发工具、如何设置Java的开发环境、编写Java程序,最后系统介绍Java语言的基本语法和面向对象的编程技术、异常处理机制、图形用户界面、多线程机制、图形、图像与多媒体技术、访问数据库技术。

4. 实践性强

在使用本书学习时,可结合具体的实例,上机实践。为方便读者使用书中实例,本次改版统一为书中Java实例编写了主类名,如例1.1中编写的源文件名称为exp1_1.java,使实例与源程序文件更好地对应。

本书主要内容如下。

本书对原来的内容进行重新整理,添加了新的例子,所有的程序都是使用最新的Java开发工具完成的。

第1章是Java快速入门,全面介绍Java语言的概况,引导读者进入Java世界,指导读者使用最新的JDK工具,添加了专用的Java开发编辑工具Eclipse的使用方式。

第2章和第3章介绍Java语法和语句构成,这是学习Java必须掌握的基本内容。

第4章和第5章是Java面向对象编程的内容,深入浅出地介绍面向对象编程的核心: 对象、类、子类、继承、多态等基本概念,还介绍了包与接口的创建与使用方法。

第6章介绍Java的异常处理机制,使读者可以掌握一些抽象的专用的Java知识。

第7章做了调整,增加了Java泛型与集合的内容,帮助读者了解什么是泛型与集合,如何使用泛型与集合知识,使读者了解Java语言的新功能。

第8章介绍常用系统类,对其中的类做了一些调整,以便读者掌握更新的Java类库和方法,帮助读者了解在系统类的基础上如何不用花很大精力就能设计功能强大的Java程序。

第9章介绍多线程技术,它是Java的主要特色之一,使用多线程技术可以编写许多适用的程序,为开发综合应用程序打基础。

第10章介绍图形用户界面的容器与组件,利用这些容器与组件可进行图形用户界面设计,编写方便适用的窗口界面,将原来的两章合并为一章。

第11章是Java轻松的一面,读者将在这里学习如何画图、如何显示图像、如何设计动画以及如何使用数据统计图。

第12章是访问数据库,首先介绍MySQL数据库保存数据的方法,然后介绍如何使用Java程序对数据库进行操作,了解使用SQL语句对数据库进行访问控制的方法,掌握综合应用前面所学知识开发一个图形用户界面对数据库进行访问控制的知识。

第13章介绍Java的一些综合实例,综合体现了前面各章基础知识与编程技术,对读者学习起到承上启下、融会贯通的作用,通过综合练习掌握一些解决实际问题的Java编程技巧。

本书有教师配套使用的电子课件、书中实例的源代码及使用的相关软件,由清华大学出版社提供给使用本教材的授课教师,同时还配套出版有本书的习题集。

本书由张驰编写第1~5章、第13章,邵丽萍编写第7~9章,庞娜娜编写第6章,王煜编写第11章,吴梓杭编写第12章,孙小兰编写第10章。全书由张驰统稿完成。

作者

2021年8月 

目录

第1章Java快速入门1

1.1Java简介1

1.1.1Java的定义1

1.1.2Java的起源和发展2

1.1.3Java语言的特点3

1.1.4Java的用途6

1.2Java开发与运行环境6

1.2.1JDK的下载与安装7

1.2.2JRE与JVM11

1.2.3在Windows中配置Java运行环境12

1.3编写与运行Java程序13

1.3.1Java的编程风格13

1.3.2编写第一个Java源程序14

1.3.3在“命令提示符”窗口编译与运行Java程序…15

1.4知识拓展——使用Eclipse16

1.4.1Eclipse的下载与安装16

1.4.2在Eclipse中编写与运行Java文件17

习题121

 第2章Java基本语法22

2.1标识符、关键字与分隔符22

2.1.1标识符23

2.1.2关键字 24

2.1.3分隔符24

2.2基本数据类型与变量26

2.2.1基本数据类型26

2.2.2常量27

2.2.3变量28

2.2.4数据类型的转换31

2.3表达式与运算符32

2.3.1赋值运算符32

2.3.2算术运算符33

2.3.3关系运算符34

2.3.4逻辑运算符35

2.3.5条件运算符36

2.3.6位运算符36

2.3.7其他运算符37

2.3.8运算符的优先级37

2.4数组与枚举39

2.4.1一维数组的声明39

2.4.2一维数组的创建与初始化39

2.4.3多维数组41

2.5知识拓展——foreach语法与枚举41

2.5.1foreach语法41

2.5.2枚举类型42

习题243

 第3章Java语句及其控制结构45

3.1Java语句的类型45

3.1.1Java程序构成45

3.1.2Java语句的种类46

3.2选择语句48

3.2.1单分支选择语句(if语句)48

3.2.2二分支选择语句(if…else语句)48

3.2.3多分支选择语句(if…else if…else语句)49

3.2.4嵌套的if…else语句50

3.2.5开关语句(switch语句)51

3.2.6在switch语句中应用枚举类型53

3.3循环语句54

3.3.1确定次数循环语句(for循环)54

3.3.2foreach 循环语句56

3.3.3先判定后执行循环语句(while循环)57

3.3.4先执行后判定循环语句(do…while循环)58

3.3.5嵌套使用循环语句59

3.3.6循环语句小结59

3.4跳转语句60

3.4.1break语句60

3.4.2continue语句60

3.4.3带标号的continue语句61

3.4.4return语句62

3.5知识拓展——注解62

3.5.1注解概述63

3.5.2内置注解与元注解63

3.5.3自定义注解65

习题365

 第4章面向对象编程68

4.1面向对象基本概念68

4.1.1对象与类68

4.1.2封装与消息70

4.1.3继承与多态71

4.1.4接口72

4.1.5面向对象的Java程序72

4.2类与对象74

4.2.1类的声明与修饰74

4.2.2不同含义的类77

4.2.3创建对象80

4.2.4构造方法84

4.3成员变量与访问控制85

4.3.1成员变量的声明85

4.3.2成员变量的修饰85

4.3.3成员变量与局部变量的区别88

4.4成员方法与参数传递机制90

4.4.1成员方法的设计90

4.4.2成员方法的声明与修饰92

4.4.3方法参数的传值方式94

4.4.4Java新特性——方法中的可变参数96

4.4.5方法小结97

4.5知识拓展——UML类图98

习题499

 第5章深入类101

5.1类的继承性101

5.1.1类的层次关系102

5.1.2成员变量的继承和隐藏103

5.1.3成员方法的继承与覆盖105

5.1.4this和super关键字106

5.2类的多态性109

5.2.1成员方法的重载109

5.2.2构造方法的重载110

5.2.3避免重载出现歧义111

5.2.4向上转型112

5.3接口113

5.3.1实现系统提供的接口113

5.3.2创建自定义接口115

5.3.3接口的多继承116

5.3.4接口变量与接口回调117

5.3.5接口的默认方法118

5.3.6接口与抽象类的对比119

5.3.7面向接口的UML图119

5.4包120

5.4.1包机制120

5.4.2Java的API系统包121

5.4.3包引用125

5.4.4创建自定义包125

5.5知识拓展——Java设计模式126

5.5.1设计模式的分类127

5.5.2Java设计原则128

习题5128

 第6章Java的异常处理机制132

6.1异常处理机制概述132

6.1.1错误与异常132

6.1.2异常发生的原因133

6.1.3如何处理异常133

6.2异常类的层次结构134

6.2.1Exception异常类的子类135

6.2.2Error错误类的子类136

6.3异常的处理136

6.3.1catch子句136

6.3.2throw语句139

6.3.3throws子句139

6.3.4finally语句142

6.3.5编译时对异常情况的检查143

6.4创建自己的异常类143

6.4.1创建自定义异常类143

6.4.2异常的使用原则144

6.5知识拓展——异常处理的新特性145

6.5.1try…with…resources语句145

6.5.2捕获多个异常146

6.5.3简单处理反射方法的异常类147

习题6148

 第7章Java泛型与集合150

7.1泛型150

7.1.1泛型概述151

7.1.2泛型类152

7.1.3泛型接口153

7.1.4泛型方法154

7.1.5有界类型155

7.1.6通配符157

7.2Java集合概述158

7.2.1集合的概念158

7.2.2集合的框架159

7.2.3集合主要接口与实现类160

7.2.4Collection接口的应用161

7.3三种典型集合162

7.3.1Set集163

7.3.2List序列165

7.3.3Map映射166

7.4知识拓展——函数式接口与Lambda表达式169

7.4.1函数式接口169

7.4.2Lambda表达式170

7.4.3方法引用171

习题7172

 第8章常用系统类173

8.1字符串类173

8.1.1字符串类的特点173

8.1.2字符串类的应用174

8.1.3String类的常用方法175

8.1.4StringBuffer类的常用方法179

8.2Java输入输出流类180

8.2.1Java的标准输入输出180

8.2.2输入输出流框架181

8.2.3输入输出流类的应用184

8.2.4RandomAccessFile类185

8.2.5对象序列化与对象流类186

8.2.6使用输入输出流小结188

8.3其他常用类189

8.3.1数学函数类Math189

8.3.2新日期类190

8.3.3随机数类Random191

8.3.4运行时Runtime类191

8.3.5控制台输入Scanner类192

8.3.6拆箱装箱的包装类193

8.3.7定时器Timer类和定时任务TimerTask类…194

8.4知识拓展——反射机制相关的类195

8.4.1Class类195

8.4.2java.lang.reflect包中的重要类195

8.4.3反射机制的应用196

习题8198

 第9章多线程机制200

9.1多线程的概念200

9.1.1程序、进程和多任务200

9.1.2线程201

9.1.3多线程201

9.1.4线程的生命周期与Java的多线程机制201

9.2创建线程对象202

9.2.1通过继承Thread类创建线程对象202

9.2.2通过Runnable接口创建线程对象204

9.3线程的优先级与状态204

9.3.1线程类的方法205

9.3.2控制线程的优先级206

9.3.3控制线程的状态207

9.4Java的线程同步机制与应用模型208

9.4.1线程的同步机制209

9.4.2生产消费模型209

9.4.3共用公司银行账户模型213

9.4.4线程通信——水塘模型214

9.5使用多线程应注意的问题217

9.5.1防止线程死锁217

9.5.2使用多线程的代价218

9.6知识拓展——多线程的新特性218

9.6.1线程池218

9.6.2通过Callable接口创建有返回值的线程220

习题9221

 第10章图形用户界面223

10.1图形用户界面概述223

10.1.1Swing与AWT组件223

10.1.2Swing类的层次结构224

10.1.3布局管理器224

10.1.4Java的事件处理机制226

10.2容器228

10.2.1窗口228

10.2.2对话框与精确定位组件228

10.2.3面板229

10.2.4分隔面板与边界管理器应用230

10.2.5选项卡面板232

10.3基本组件233

10.3.1标签文本框与网格管理器应用233

10.3.2按钮与自建监听器234

10.3.3单选按钮与内建监听器236

10.3.4复选框237

10.3.5下拉列表框与匿名监听器239

10.3.6文本区与滚动条240

10.3.7创建容器与组件小结242

10.4菜单组件242

10.4.1菜单栏242

10.4.2多级菜单244

10.4.3文件选择器与执行命令的菜单245

10.4.4工具栏246

10.4.5弹出式菜单与适配器的应用248

10.5知识拓展——表格250

10.5.1普通表格与卡片管理器应用250

10.5.2创建默认表格模型252

10.5.3维护表格253

习题10255

 第11章图形与多媒体处理257

11.1使用Graphics绘制基本图形257

11.1.1如何使用颜色对象258

11.1.2绘制直线和矩形259

11.1.3绘制椭圆和圆弧260

11.1.4绘制多边形262

11.2使用Graphics2D绘制基本图形263

11.2.1绘制二维直线263

11.2.2绘制二维矩形264

11.3使用Graphics绘制文字图形265

11.3.1绘制字符串、字符和字节文字266

11.3.2字体控制267

11.3.3不同颜色的文字268

11.4图像处理269

11.4.1图像种类269

11.4.2图像的显示270

11.4.3图像的缩放显示271

11.5动画处理272

11.5.1动画原理272

11.5.2用线程实现动画274

11.6知识拓展——Java数据统计图276

11.6.1柱形图277

11.6.2饼图279

11.6.3折线图281

习题11283

 第12章访问数据库285

12.1数据库和JDBC285

12.1.1数据库的下载与安装285

12.1.2MySQL的操作287

12.1.3JDBC简介289

12.1.4创建连接数据库的公用类289

12.2通过Java程序访问数据库292

12.2.1在数据库中创建数据表293

12.2.2添加和查询数据293

12.3通过窗口界面访问数据库296

12.3.1添加学生信息296

12.3.2修改学生信息299

12.3.3删除学生信息302

习题12305

 第13章综合应用程序实例306

13.1数值变换运算306

13.2幻灯机效果307

13.3利用滑块改变背景颜色308

13.4对象的克隆309

13.5正弦曲线310

13.6在画布上手工画图311

13.7电闪雷鸣的动画313

13.8控制移动的文字315

13.9水中倒影318

13.10图形钟319

习题13322

 编后语324

作者简介

编辑推荐

1. 通俗易懂、图文并茂

本书都是通过具体的例子来介绍有关Java语言的概念、方法和技术,每章都有大量完整的例子,用来说明使用Java语言编程的基本步骤和基本方法,并有图片配合说明,通俗易懂,读者完全可以按书中介绍的方法运行每个程序实例,通过实例理解Java语言的基本思想和编程技巧。

2. 内容全面、结构清晰

本书从Java语言的产生、特点、结构开始介绍,然后介绍如何得到Java语言的开发工具、如何设置Java的开发环境、编写Java程序,再系统介绍Java语言的基本语法和面向对象的编程技术、异常处理机制、图形用户界面、多线程机制、图形、图像与多媒体技术、访问数据库技术。

3. 循序渐进

本书对整个内容做了精心设计和安排,首先介绍Java语言字符模式的编程方法,然后介绍使用图形用户界面的编程方法。循序渐进,先易后难,逐步深入,通过具体实例引出后续内容或巩固前面介绍的内容。在“知识拓展”一节介绍一些Java新特性与抽象概念,为读者深入了解Java知识指出学习方向。

4.实践性强

在使用本书学习时,可结合具体的实例,上机实践,为方便读者使用书中实例,本次改版统一为书中Java实例编写了主类名,例1.1中编写的源文件名称为exp1_1.java,使实例与源程序文件做到更好的对应。

作者寄语

张驰,国家信息中心,北京交通大学信息管理博士,具有多年信息系统设计与建设工作经验,先后主持或参与多项国家部委和各省市信息化规划、大数据、智慧城市等咨询评估、顶层规划、研究设计项目,主要研究领域为政务信息化、大数据分析与应用、智慧城市建设。

电子资料

www.luweidong.cn

下一个