
本书针对Java 开发领域的实际需求,参照OCA(Oracle Certified Associate)考核知识点和认证体系,详细讲解了Java 技术的基础知识。内容包含Java 语言概述与编程环境、Java 语言基础、类与对象、深入理解Java 语言面向对象(继承、重写、对象多态性、Object 类、抽象类、接口、内部类、Lambda 表达式)、异常处理、常用类与工具类、多线程、输入输出流、图形用户界面,以及数据库编程。全书逻辑性强,循序渐近且示例丰富,能够帮助初学者快速掌握Java 开发技能。本书的内容和组织基于高校教材的要求,既可作为高等院校本科、专科计算机相关专业的教材,也可作为基础的培训用书。
Java 是面向互联网的开源的计算机程序设计语言,具有跨平台、面向对象、多线程的特点,经过20 多年的发展,吸收了软件开发领域的最新成果,支持泛型编程、Lambda 表达式、反射、注解等,广泛用于企业级Web 应用开发和移动应用开发。对大多数学生来说,Java 的学习周期长、学习难度大、学习效率低。 在众多的Java 知识内容当中,合理选择知识体系和教学内容,实现课堂教学的有效、实效和高效,是Java 课程教学面临的难题。本书针对Java 开发领域的实际需求,参照OCA(Oracle Certified Associate)考核知识点和认证体系,详细讲解了Java 技术的基础知识。全书逻辑性强,循序渐近且示例丰富,能够帮助初学者快速掌握Java 开发技能。 本书共10 章,各章内容安排如下。 第1 章为Java 语言概述与编程环境,介绍面向对象的编程思想,包括Java 语言的发展历史、Java 语言的特点、Java 开发环境等。 第2 章介绍Java 语言基础,包括Java 的基本语法,变量与常量,运算符、表达式与语句,程序流控制和数组等。 第3 章介绍类与对象,包括类的定义、对象的创建与使用、访问控制符、static 关键字的使用、this 关键字的使用,以及包的使用,并详细描述了类的封装思想。 第4 章为深入理解Java 语言面向对象,包括继承、重写、对象多态性、Object 类、抽象类、接口、内部类,以及Lambda 表达式。 第5 章介绍异常处理,包括异常概述、Java 异常的捕获和处理、Java 异常的声明和抛出,以及自定义异常。 第6 章介绍常用类与工具类,包括包装类、Math 类与Random 类、字符串类、日期与时间类、集合类,并详细介绍泛型的基本知识和反射机制。 第7 章介绍多线程,包括线程简介、创建线程、线程同步。 第8 章介绍输入输出流,包括输入输出流概述、文件类、字节流、字符流、随机流。介绍各种流的使用,以文件流为例介绍如何读写文件;并介绍对象序列化的相关知识及使用方法。 第9 章为图形用户界面,包括GUI 简介、常用的UI 组件、布局面板、形状类、事件处理机制、FXML 设计用户界面、JavaFX 可视化布局工具。 第10 章介绍数据库编程,包括数据库概述、SQL 语言基础、MySQL 数据库简介、Java数据库编程、数据库应用综合实例。 本书由陈振兴、谭瑛和彭少斌主编。各章编写分工如下:第1 章、第7 章由钱坤编写,第2 章、第8 章由彭少斌编写,第3 章由马冯、陈振兴编写,第4 章由李红编写,第5 章、第9 章由谭瑛编写,第6 章由冯涛编写,第10 章由陈振兴编写。全书由陈振兴和谭瑛统稿和定稿。本书的编写得到了云南财经大学信息学院的大力支持,在此表示衷心感谢! 参加本书编写的人员都是从事“Java 程序设计”课程教学多年的老师,有丰富的教学经验。本书的教学电子课件可从华信教育网https://www.hxedu.com.cn 下载。在编写过程中,我们力求做到严谨细致、精益求精,但由于编者水平有限,书中难免有疏漏之处,敬请广大读者指正。编者联系邮箱:ahxing@126.com。
第1 章 Java 语言概述与编程环境 ........................................................................................... 1 1.1 Java 语言的发展历史 .................................................................................................... 1 1.2 Java 语言的特点 ............................................................................................................ 2 1.3 Java 开发环境 ................................................................................................................ 3 1.3.1 下载JDK ............................................................................................................. 4 1.3.2 JDK 的安装与配置 ............................................................................................. 5 1.3.3 IntelliJ IDEA 编译环境的搭建 ........................................................................... 7 1.3.4 Eclipse 编译环境的搭建 .................................................................................... 8 1.4 一个简单的Java 程序 ................................................................................................... 9 1.5 编译和执行Java 程序 ................................................................................................. 10 1.5.1 控制台方式 ....................................................................................................... 10 1.5.2 IDE 方式 ........................................................................................................... 11 1.6 本章小结 ...................................................................................................................... 11 1.7 习题 .............................................................................................................................. 12 第2 章 Java 语言基础 ............................................................................................................. 13 2.1 Java 的基本语法 .......................................................................................................... 13 2.1.1 Java 的基本语法格式 ....................................................................................... 13 2.1.2 Java 中的注释 ................................................................................................... 14 2.1.3 关键字 ............................................................................................................... 15 2.1.4 标识符 ............................................................................................................... 16 2.2 变量与常量 .................................................................................................................. 17 2.2.1 变量概述 ........................................................................................................... 17 2.2.2 变量的定义 ....................................................................................................... 17 2.2.3 常量 ................................................................................................................... 17 2.2.4 数据类型 ........................................................................................................... 17 2.2.5 变量的作用域 ................................................................................................... 22 2.2.6 变量的初始化 ................................................................................................... 23 2.2.7 基本数据类型转换 ........................................................................................... 24 2.3 运算符、表达式与语句 .............................................................................................. 25 2.3.1 算术运算符与算术表达式 ............................................................................... 25 2.3.2 关系运算符与关系表达式 ............................................................................... 26 2.3.3 逻辑运算符与逻辑表达式 ............................................................................... 26 2.3.4 位运算符 ........................................................................................................... 27 2.3.5 赋值运算符与赋值表达式 ............................................................................... 28 2.3.6 其他运算符 ....................................................................................................... 29 2.3.7 运算符的优先级与结合性 ............................................................................... 29 2.3.8 语句 ................................................................................................................... 30 2.4 程序流控制 .................................................................................................................. 30 2.4.1 分支语句 ........................................................................................................... 30 2.4.2 循环语句 ........................................................................................................... 34 2.4.3 跳转语句 ........................................................................................................... 36 2.5 数组 .............................................................................................................................. 38 2.5.1 声明数组 ........................................................................................................... 39 2.5.2 给数组分配元素 ............................................................................................... 39 2.5.3 数组元素的使用 ............................................................................................... 40 2.5.4 数组的初始化 ................................................................................................... 40 2.5.5 数组的引用 ....................................................................................................... 41 2.5.6 数组的遍历 ....................................................................................................... 41 2.5.7 数组的最值 ....................................................................................................... 42 2.5.8 数组排序 ........................................................................................................... 42 2.6 Java Scanner 类 ........................................................................................................... 43 2.7 本章小结 ...................................................................................................................... 45 2.8 习题 .............................................................................................................................. 45 第3 章 类与对象 ....................................................................................................................... 49 3.1 类的定义 ...................................................................................................................... 50 3.1.1 类的声明 ........................................................................................................... 50 3.1.2 类的成员 ........................................................................................................... 50 3.1.3 成员变量和局部变量 ....................................................................................... 51 3.1.4 成员方法 ........................................................................................................... 53 3.1.5 方法的重载 ....................................................................................................... 54 3.1.6 构造方法 ........................................................................................................... 55 3.1.7 类成员和实例成员 ........................................................................................... 56 3.2 对象的创建与使用 ...................................................................................................... 56 3.2.1 创建对象 ........................................................................................................... 56 3.2.2 使用对象 ........................................................................................................... 59 3.2.3 对象的引用和实体 ........................................................................................... 60 3.2.4 垃圾回收 ........................................................................................................... 61 3.3 访问控制符 .................................................................................................................. 61 3.3.1 成员访问控制符 ............................................................................................... 61 3.3.2 public 类与default 类 ....................................................................................... 64 3.4 static 关键字的使用 ..................................................................................................... 64 3.4.1 实例变量和类变量的区别 ............................................................................... 64 3.4.2 实例方法和类方法的区别 ............................................................................... 65 3.4.3 静态代码块 ....................................................................................................... 67 3.5 this 关键字的使用 ....................................................................................................... 67 3.6 包的使用 ...................................................................................................................... 68 3.6.1 包的定义与使用 ............................................................................................... 69 3.6.2 import 语句 ....................................................................................................... 71 3.6.3 静态导入 ........................................................................................................... 71 3.7 本章小结 ...................................................................................................................... 73 3.8 习题 .............................................................................................................................. 73 第4 章 深入理解Java 语言面向对象..................................................................................... 76 4.1 继承 .............................................................................................................................. 76 4.1.1 继承关系的引出 ............................................................................................... 76 4.1.2 继承的限制 ....................................................................................................... 79 4.1.3 子类对象的实例化 ........................................................................................... 81 4.2 重写 .............................................................................................................................. 83 4.2.1 方法的重写 ....................................................................................................... 83 4.2.2 属性的覆盖 ....................................................................................................... 85 4.2.3 属性的应用 ....................................................................................................... 85 4.2.4 两组重要概念的比较 ....................................................................................... 86 4.3 对象多态性 .................................................................................................................. 88 4.3.1 多态的概述与对象的类型转换 ....................................................................... 88 4.3.2 instanceof 关键字 .............................................................................................. 91 4.4 Object 类 ...................................................................................................................... 92 4.4.1 基本概念 ........................................................................................................... 92 4.4.2 对象信息:toString() ........................................................................................ 92 4.4.3 对象比较:equals() .......................................................................................... 93 4.5 抽象类 .......................................................................................................................... 94 4.5.1 抽象类的定义 ................................................................................................... 95 4.5.2 抽象类实例化 ................................................................................................... 96 4.6 接口 .............................................................................................................................. 97 4.6.1 接口的定义 ....................................................................................................... 97 4.6.2 接口的使用—制定标准 ............................................................................... 99 4.6.3 抽象类和接口的区别 ..................................................................................... 100 4.7 内部类 ........................................................................................................................ 100 4.7.1 内部类的定义 ................................................................................................. 100 4.7.2 使用static 定义内部类 ................................................................................... 101 4.7.3 在方法中定义内部类 ..................................................................................... 102 4.7.4 匿名内部类 ..................................................................................................... 103 4.8 Lambda 表达式 .......................................................................................................... 104 4.8.1 表达式入门 ..................................................................................................... 104 4.8.2 函数式接口 ..................................................................................................... 106 4.9 本章小结 .................................................................................................................... 107 4.10 习题 .......................................................................................................................... 108 第5 章 异常处理 ..................................................................................................................... 113 5.1 异常概述 .................................................................................................................... 113 5.1.1 什么是异常 ..................................................................................................... 113 5.1.2 异常类的层次结构 ......................................................................................... 113 5.2 Java 异常的捕获和处理 ............................................................................................ 115 5.2.1 try-catch 语句捕获异常 .................................................................................. 115 5.2.2 finally 语句 ...................................................................................................... 116 5.3 Java 异常的声明和抛出 ............................................................................................ 118 5.3.1 throws 语句 ..................................................................................................... 118 5.3.2 throw 语句 ....................................................................................................... 119 5.3.3 throw 和throws ............................................................................................... 120 5.4 自定义异常类 ............................................................................................................ 121 5.5 本章小结 .................................................................................................................... 122 5.6 习题 ............................................................................................................................ 122 第6 章 常用类与工具类 ......................................................................................................... 124 6.1 包装类 ........................................................................................................................ 124 6.1.1 装箱与拆箱 ..................................................................................................... 124 6.1.2 包装类常用方法 ............................................................................................. 125 6.1.3 包装类的应用 ................................................................................................. 126 6.2 Math 类与Random 类 ............................................................................................... 126 6.2.1 Math 类 ............................................................................................................ 126 6.2.2 Random 类....................................................................................................... 128 6.3 字符串类 .................................................................................................................... 129 6.3.1 字符串的不变性 ............................................................................................. 129 6.3.2 字符串的常用方法 ......................................................................................... 130 6.3.3 StringBuilder 类和StringBuffer 类................................................................. 132 6.3.4 StringJoiner 类 ................................................................................................. 132 6.4 日期与时间类 ............................................................................................................ 133 6.4.1 基本概念 ......................................................................................................... 133 6.4.2 Date 类 ............................................................................................................ 133 6.4.3 Calendar 类 ...................................................................................................... 134 6.4.4 日期与时间格式化类 ..................................................................................... 135 6.5 集合类 ........................................................................................................................ 137 6.5.1 List 接口及其子类 .......................................................................................... 137 6.5.2 Set 接口 ........................................................................................................... 141 6.5.3 Collections 类 .................................................................................................. 142 6.5.4 Map 集合 ......................................................................................................... 143 6.6 泛型 ............................................................................................................................ 144 6.6.1 为什么要使用泛型 ......................................................................................... 144 6.6.2 泛型在集合中的应用 ..................................................................................... 145 6.6.3 泛型接口 ......................................................................................................... 147 6.7 反射机制 .................................................................................................................... 148 6.7.1 反射概述 ......................................................................................................... 148 6.7.2 认识Class 类 .................................................................................................. 148 6.7.3 通过反射机制查看类信息 ............................................................................. 150 6.8 本章小结 .................................................................................................................... 152 6.9 习题 ............................................................................................................................ 153 第7 章 多线程 ......................................................................................................................... 158 7.1 线程简介 .................................................................................................................... 158 7.1.1 程序、进程、线程 ......................................................................................... 159 7.1.2 多线程的优势 ................................................................................................. 159 7.2 创建线程 .................................................................................................................... 160 7.2.1 继承Thread 类 ................................................................................................ 160 7.2.2 实现Runnable 接口 ........................................................................................ 164 7.3 线程同步 .................................................................................................................... 166 7.3.1 线程安全问题 ................................................................................................. 166 7.3.2 线程的同步 ..................................................................................................... 167 7.4 本章小结 .................................................................................................................... 169 7.5 习题 ............................................................................................................................ 169 第8 章 输入输出流 ................................................................................................................. 170 8.1 输入输出流概述 ........................................................................................................ 170 8.1.1 流的分类 ......................................................................................................... 171 8.1.2 输入输出流的套接 ......................................................................................... 171 8.2 文件类 ........................................................................................................................ 172 8.3 字节流 ........................................................................................................................ 175 8.3.1 标准流 ............................................................................................................. 177 8.3.2 文件流 ............................................................................................................. 178 8.3.3 字节过滤流 ..................................................................................................... 180 8.3.4 对象序列化及对象流 ..................................................................................... 183 8.4 字符流 ........................................................................................................................ 185 8.4.1 文件字符流 ..................................................................................................... 187 8.4.2 字符缓冲流 ..................................................................................................... 188 8.4.3 字节字符转换流 ............................................................................................. 189 8.5 随机流 ........................................................................................................................ 190 8.6 本章小结 .................................................................................................................... 191 8.7 习题 ............................................................................................................................ 192 第9 章 图形用户界面 ............................................................................................................. 194 9.1 GUI 简介 .................................................................................................................... 194 9.1.1 JavaFX 与Swing、AWT ................................................................................ 194 9.1.2 JavaFX 开发环境配置 .................................................................................... 194 9.1.3 JavaFX 的基本框架 ........................................................................................ 196 9.2 常用的UI 组件 .......................................................................................................... 198 9.2.1 TextField 和TextArea ..................................................................................... 198 9.2.2 Label ................................................................................................................ 198 9.2.3 按钮 ................................................................................................................. 199 9.3 布局面板 .................................................................................................................... 200 9.3.1 StackPane ........................................................................................................ 200 9.3.2 FlowPane ......................................................................................................... 201 9.3.3 GridPane .......................................................................................................... 201 9.3.4 BorderPane ...................................................................................................... 202 9.3.5 HBox 和VBox ................................................................................................ 202 9.4 形状类 ........................................................................................................................ 203 9.4.1 Text 类 ............................................................................................................. 203 9.4.2 Line 类 ............................................................................................................. 203 9.4.3 Rectangle 类 .................................................................................................... 203 9.4.4 Circle 类 .......................................................................................................... 203 9.4.5 Ellipse 类 ......................................................................................................... 205 9.4.6 Arc 类 .............................................................................................................. 205 9.5 事件处理机制 ............................................................................................................ 205 9.5.1 事件和事件源 ................................................................................................. 205 9.5.2 事件处理器 ..................................................................................................... 205 9.5.3 Lambda 表达式简化事件处理 ....................................................................... 207 9.6 FXML 设计用户界面 ................................................................................................ 208 9.7 JavaFX 可视化布局工具 ........................................................................................... 210 9.7.1 JavaFX Scene Builder 的下载与安装 ............................................................. 210 9.7.2 JavaFX Scene Builder 的使用 ........................................................................ 211 9.8 本章小结 .................................................................................................................... 216 9.9 习题 ............................................................................................................................ 216 第10 章 数据库编程 ............................................................................................................... 217 10.1 数据库概述 .............................................................................................................. 217 10.1.1 数据库和数据库系统概述 ........................................................................... 217 10.1.2 关系型数据库 ............................................................................................... 219 10.2 SQL 语言基础 ......................................................................................................... 220 10.3 MySQL 数据库简介 ................................................................................................ 222 10.3.1 MySQL 安装与配置 ..................................................................................... 222 10.3.2 MySQL 建库建表及相关操作 ..................................................................... 222 10.4 Java 数据库编程 ...................................................................................................... 223 10.4.1 JDBC 简介 .................................................................................................... 223 10.4.2 JDBC 常用API ............................................................................................. 224 10.4.3 JDBC 编程 .................................................................................................... 224 10.5 数据库应用综合实例 .............................................................................................. 229 10.5.1 数据模型设计 ............................................................................................... 229 10.5.2 数据类设计 ................................................................................................... 230 10.5.3 实现CRUD ................................................................................................... 231 10.5.4 界面设计 ....................................................................................................... 234 10.6 本章小结 .................................................................................................................. 242 10.7 习题 .......................................................................................................................... 242
http://www.hxedu.com.cn/hxedu/fg/book/bookinfo.html?code=TP439390