技术教育社区
www.teccses.org

JAVA程序设计基础(第6版)/陈国君

封面

作者:陈国君、陈磊、李梅生、刘洋、鲜征征、刘秋

页数:442

出版社:清华大学出版社

出版日期:2019

ISBN:9787302515517

电子书格式:pdf/epub/txt

内容简介

《Java程序设计(第6版)》系统地介绍Java语言的特点及应用技术。-5章讲述Java的基本知识,第6-8章讲解面向对象基础内容,这部分是关键内容;第9-11章讲解了异常处理、输入输出和多线程,这部分Java的主要内容;2章主要讲解泛型与容器类;3章讲解注解、反射、内部类、匿名骶部类与Lambda表达式;4章主要讲解界面元素的布局;5章的事件处理是本教材的重点,也是很能引起学生兴趣的内容;6-18章讲述了绘图程序设计、数据库编程和网络编程。

本书特色

《Java程序设计(第6版)》总结了同类教材中的缺点和不足基础上进行编写的,其特点是通俗易懂、入门快、读者在书中能清楚地知道程序设计中的关键技术是为什么要这样设计的道理。因为只有把原理讲清楚,读者才能真正的掌握这门技术,所以书中的程序实例都是精心挑选出的初学者最关心的基本问题,将复杂的问题简单化、具体化、实例化,用实例帮助读者透彻理解复杂的Java技术,加深读者对知识的记忆,适合自学。

经典教材第6版,64位Windows 操作系统,JDK 10版本

目录

目录

第1章Java语言概述

1.1Java语言的诞生与发展

1.2Java语言的特点

1.3Java语言规范

1.4Java虚拟机

1.5Java程序的种类和结构

本章小结

第1章习题

第2章Java语言开发环境

2.1Java开发工具

2.1.1JDK的下载与安装

2.1.2设置JDK的操作环境

2.2JDK帮助文档下载与安装

2.3JDK的使用

本章小结

第2章习题

第3章Java语言基础

3.1数据类型

3.2关键字与标识符

3.3常量

3.4变量

3.5数据类型转换

3.6由键盘输入数据

3.7运算符与表达式

3.7.1算术运算符

3.7.2关系运算符

3.7.3逻辑运算符

3.7.4位运算符

3.7.5赋值运算符

3.7.6条件运算符

3.7.7字符串运算符

3.7.8表达式及运算符的优先级、
结合性

本章小结

第3章习题

第4章流程控制

4.1语句与复合语句

4.2顺序结构

4.3分支结构

4.3.1if条件语句

4.3.2switch选择语句

4.4循环结构

4.4.1while语句

4.4.2do瞱hile语句

4.4.3for语句

4.4.4多重循环

4.5循环中的跳转语句

4.5.1break语句

4.5.2continue语句

4.5.3return语句

本章小结

第4章习题

第5章数组与字符串

5.1数组的基本概念

5.2一维数组

5.2.1一维数组的定义

5.2.2一维数组元素的访问

5.2.3一维数组的初始化及应用

5.3foreach语句与数组

5.4多维数组

5.4.1二维数组

5.4.2三维以上的多维数组

5.5字符串

5.5.1字符串变量的创建

5.5.2String类的常用方法

本章小结

第5章习题

第6章类与对象

6.1类的基本概念

6.2定义类

6.3对象的创建与使用

6.3.1创建对象

6.3.2对象的使用

6.3.3在类定义内调用方法

6.4参数的传递

6.4.1以变量为参数调用方法

6.4.2以数组作为参数或返回值的
方法调用

6.4.3方法中的可变参数

6.5匿名对象

本章小结

第6章习题

第7章Java语言类的特性

7.1类的私有成员与公共成员

7.1.1私有成员

7.1.2公共成员

7.1.3缺省访问控制符

7.2方法的重载

7.3构造方法

7.3.1构造方法的作用与定义

7.3.2默认的构造方法

7.3.3构造方法的重载

7.3.4从一个构造方法内调用
另一个构造方法

7.3.5公共的构造方法与私有的
构造方法

7.4静态成员

7.4.1实例成员

7.4.2静态变量

7.4.3静态方法

7.4.4静态初始化器

7.5对象的应用

7.5.1对象的赋值与比较

7.5.2引用变量作为方法的返回值

7.5.3类类型的数组

7.5.4以对象数组为参数进行
方法调用

7.6Java语言的垃圾回收

本章小结

第7章习题

第8章继承、抽象类、接口和枚举

8.1类的继承

8.1.1子类的创建

8.1.2在子类中访问父类的成员

8.1.3覆盖

8.1.4不可被继承的成员与最终类

8.1.5Object类

8.2抽象类

8.2.1抽象类与抽象方法

8.2.2抽象类的应用

8.3接口

8.3.1接口的定义

8.3.2接口的实现与引用

8.3.3接口的继承

8.3.4利用接口实现类的多重继承

8.3.5接口中静态方法和默认方法

8.3.6解决接口多重继承中名字
冲突问题

8.4枚举

8.4.1枚举类型的定义

8.4.2不包含方法的枚举

8.4.3包含属性和方法的枚举

8.5包

8.5.1包的概念

8.5.2使用package语句创建包

8.5.3Java语言中的常用包

8.5.4Java语言中几个常用的类

8.5.5利用import语句引用
Java定义的包

8.5.6Java程序结构

本章小结

第8章习题

第9章异常处理

9.1异常处理的基本概念

9.1.1错误与异常

9.1.2Java语言的异常处理机制

9.2异常处理类

9.3异常的处理

9.4抛出异常

9.5自动关闭资源的try语句

9.6自定义异常类

本章小结

第9章习题

第10章Java语言的输入输出与
文件处理

10.1Java语言的输入输出

10.1.1流的概念

10.1.2输入输出流类库

10.2使用InputStream和
OutputStream流类

10.2.1基本的输入输出流类

10.2.2输入输出流的应用

10.3使用Reader和Writer流类

10.3.1使用FileReader类读取文件

10.3.2使用FileWriter类写入文件

10.3.3使用BufferedReader类
读取文件

10.3.4使用BufferedWriter类
写入文件

10.4文件的处理与随机访问

10.4.1Java语言对文件与
文件夹的管理

10.4.2对文件的随机访问

本章小结

第10章习题

第11章多线程

11.1线程的概念

11.1.1程序、进程、多任务与线程

11.1.2线程的状态与生命周期

11.1.3线程的优先级与调度

11.2Java的Thread线程类与
Runnable接口

11.2.1利用Thread类的子类来
创建线程

11.2.2用Runnable接口来创建线程

11.2.3线程间的数据共享

11.3多线程的同步控制

11.4线程之间的通信

本章小结

第11章习题

第12章泛型与容器类

12.1泛型

12.1.1泛型的概念

12.1.2泛型类及应用

12.1.3泛型方法

12.1.4限制泛型的可用类型

12.1.5泛型的类型通配符和泛型
数组的应用

12.1.6继承泛型类与实现泛型接口

12.2容器类

12.2.1Java容器框架

12.2.2容器接口Collection

12.2.3列表接口List

12.2.4集合接口Set

12.2.5映射接口Map

本章小结

第12章习题

第13章注解、反射、内部类、匿名
内部类与Lambda表达式

13.1注解

13.2反射机制

13.2.1Class类

13.2.2反射包reflet中的常用类

13.2.3反射的应用

13.3内部类与匿名内部类

13.3.1内部类

13.3.2匿名内部类

13.4函数式接口与Lambda表达式

13.4.1函数式接口

13.4.2Lambda表达式

13.4.3Lambda表达式作为
方法的参数

13.5方法引用

本章小结

第13章习题

第14章图形界面设计

14.1图形用户界面概述

14.2图形用户界面工具包JavaFX

14.2.1JavaFX组件分类

14.2.2JavaFX的基本概念

14.3JavaFX的布局面板

14.3.1面板类Pane和JavaFX CSS

14.3.2栈面板类StackPane

14.3.3流式面板类FlowPane

14.3.4边界面板类BoderPane

14.3.5网格面板类GridPane

14.3.6单行面板类HBox和单列
面板类VBox

14.4JavaFX的辅助类

14.4.1颜色类Color

14.4.2字体类Font

14.4.3图像类Image和图像显示类
ImageView

14.5JavaFX属性绑定

14.6JavaFX常用控件

14.6.1标签Label

14.6.2文本编辑控件TextField、
PasswordField、TextArea与
滚动面板ScrollPane

14.6.3复选框CheckBox和单选
按钮RadioButton

14.6.4选项卡面板TabPane和
选项卡Tab

本章小结

第14章习题

第15章事件处理

15.1Java语言的事件处理机制
——委托事件模型

15.2Java语言的事件类

15.2.1动作事件ActionEvent

15.2.2鼠标事件MouseEvent

15.2.3键盘事件KeyEvent

15.3复选框和单选按钮及
相应的事件处理

15.4文本编辑控件及相应的
事件处理

15.5组合框及相应的事件处理

15.6为绑定属性添加监听者

15.7列表视图控件及相应的
事件处理

15.8滑动条及相应的事件处理

15.9进度条及相应的事件处理

15.10菜单设计

15.10.1菜单基本知识

15.10.2窗口菜单

15.10.3弹出菜单

15.11工具栏设计

15.12文件选择对话框

15.13颜色选择器

15.14音频与视频程序设计

本章小结

第15章习题

第16章绘图与动画程序设计

16.1图形坐标系与图形类

16.1.1直线类Line

16.1.2矩形类Rectangle

16.1.3圆类Circle

16.1.4椭圆类Ellipse

16.1.5弧类Arc

16.1.6多边形类Polygon与
折线类Polyline

16.1.7交互式程序设计

16.2动图程序设计

16.2.1过渡动画

16.2.2时间轴动画

本章小结

第16章习题

第17章Java数据库程序设计

17.1关系数据库系统

17.1.1数据库与数据库表

17.1.2完整性约束

17.2SQL

17.2.1创建数据库

17.2.2表操作

17.2.3表数据操作

17.2.4数据查询

17.3JDBC

17.3.1JDBC概述

17.3.2JDBC类型

17.3.3使用JDBC开发数据库
应用程序

17.3.4数据库的进一步操作

17.3.5获取元数据

17.3.6事务操作

17.3.7在窗口中访问数据库

本章小结

第17章习题

第18章Java网络编程

18.1网络基础

18.1.1TCP/IP

18.1.2通信端口

18.1.3URL的概念

18.1.4Java语言的网络编程

18.2URL编程

18.2.1创建URL对象

18.2.2使用URL类访问网络资源

18.3用Java语言实现底层网络通信

18.3.1InetAddress程序设计

18.3.2基于连接的Socket
通信程序设计

18.3.3无连接的数据报
通信程序设计

本章小结

第18章习题

参考文献

节选

第3章Java语言基础

本章主要内容:
r 数据类型;
r 变量;
r 基本类型变量;
r 数据类型的转换规则;
r 从键盘输入数据的语句格式;
r 运算符。

本章主要介绍编写Java程序必须掌握的若干语言基础知识,包括数据类型、变量、常量、表达式等。掌握这些基础知识,是编写正确Java程序的前提条件。

3.1数据类型
程序在执行的过程中,需要对数据进行运算,也需要存储数据。这些数据可能是由使用者输入的,也可能是从文件中取得的,甚至是由网络上得到的。在程序运行的过程中,这些数据通过变量存储在内存中,以便程序随时取用。
数据存储在内存的一块空间中,为了取得数据,必须知道这块内存空间的位置,为了方便使用,程序设计语言用变量名来代表该数据存储空间的位置。将数据指定给变量,就是将数据存储到对应的内存空间; 调用变量,就是将对应的内存空间中的数据取出来使用。

一个变量代表一个内存空间,数据就存储在这个空间中,使用变量名来取得数据非常方便,然而由于数据在存储时所需要的内存容量各不相同,不同的数据就必须要分配不同大小的内存空间来存储,因此在Java语言中对不同的数据用不同的数据类型来区分。
在程序设计中,数据是程序的必要组成部分,也是程序处理的对象。不同的数据有不同的数据类型,不同的数据类型有不同的数据结构、不同的存储方式,并且参与的运算也不相同。通常计算机语言将数据按其性质进行分类,每一类称为一种数据类型(data type)。数据类型定义了数据的性质、取值范围、存储方式以及对数据所能进行的运算和操作。程序中的每一个数据都属于一种类型,定义了数据的类型也就相应决定了数据的性质以及对数据进行的操作,同时数据也受到类型的保护,确保对数据不进行非法操作。
Java语言中的数据类型分为两大类: 一类是基本数据类型(primitive types); 另一类是引用数据类型(reference types),简称引用类型。基本数据类型是由程序设计语言系统所定义、不可再分的数据类型。每种基本数据类型的数据所占内存的大小是固定的,与软硬件环境无关。基本数据类型在内存中存放的是数据值本身。引用数据类型在内存中存放的是指向该数据的地址,不是数据值本身,它往往由多个基本数据类型组成,因此,对引用数据类型的应用称为对象引用,引用数据类型也被称为复合数据类型,在有的程序设计语言中称为指针。
基本数据类型有整型、浮点型、逻辑型和字符型; 引用数据类型包括类、数组和接口等。本节只介绍基本数据类型,引用数据类型在5.1节中再进行介绍。
Java语言的数据类型实际上都是用类实现的,即引用对象的使用方式,同时Java语言也提供了类似C语言中简单类型的使用方式,即声明类型的变量。
Java语言定义了4类共8种基本类型,其中有4种整型、2种浮点型、1种布尔型和1种字符型,它们的分类及关键字如下。
r 整型: byte,short,int,long。
r 浮点型: float,double。
r 布尔型: boolean。
r 字符型: char。

1. 整型
整数有正整数、零、负整数,其含义与数学中的含义相同。Java语言的整数有三种进制的表示形式。

r 十进制: 用多个0~9的数字表示,如123和-100,其首位不能为0。
r 八进制: 以0开头,后跟多个0~7的数字,如0123。
r 十六进制: 以0x或0X开头,后跟多个0~9的数字或a~f的小写字母或A~F的大写字母,a~f或A~F均表示值10~15,如0X123E。

Java语言定义了4种表示整数的类型: 字节型(byte)、短整型(short)、整型(int)、长整型(long)。每种整型的数据都是带符号位的。Java语言的每种数据类型都对应—个默认的数值,使得这种数据类型变量的取值总是确定的,体现了其安全性。整型类型如表3.1所示。

表3.1Java语言的整数类型

类型
数据位
范围

byte(字节型)
8
-128~127,即-27~27-1
short(短整型)
16
-32 768~32 767,即-215~215-1
int(整型)
32
-2 147 483 648~2 147 483 647,即-231~231-1
long(长整型)
64
-9 223 372 036 854 775 808~9 223 372 036 854 775 807,即-263~263-1

一个整数隐含为整型(int型)。当要将一个整数强制表示为长整数时,需在后面加字母l或L。所以若声明long型变量的值超过int型的取值范围时,如果数的后面不加l或L,系统会认是int型而出错。
2. 浮点型
Java语言用浮点型表示数学中的实数(浮点数),也就是既有整数部分又有小数部分的数。浮点数有两种表示方式。

r 标准计数法: 由整数部分、小数点和小数部分构成,如3.0,3.1415等。
r 科学计数法: 由十进制整数、小数点、小数和指数部分构成,指数部分由字母E或e跟上带正负号的整数表示,如123.45可表示为1.2345E+2。

浮点数用于需要小数位精确度高的计算。例如,计算平方根或三角函数等,都会产生浮点型的值。Java语言的浮点型有单精度浮点(float)和双精度浮点(double)两种,如表3.2所示。

下载地址

立即下载

(解压密码:www.teccses.org)

Article Title:《JAVA程序设计基础(第6版)/陈国君》
Article link:https://www.teccses.org/973005.html