《从零开始学 Java 第3版》PDF下载

  • 购买积分:13 如何计算积分?
  • 作  者:郭现杰,张权编著
  • 出 版 社:北京:电子工业出版社
  • 出版年份:2017
  • ISBN:7121302733
  • 页数:366 页
图书介绍:

第一篇 Java基础 1

第1章 第一个Java程序——HelloWorld 1

1.1 Java语言简介 1

1.1.1 Java语言的历史 1

1.1.2 Java语言的优点 2

1.1.3 发展前景 2

1.2 工作原理 3

1.2.1 Java虚拟机(JVM) 3

1.2.2 无用内存自动回收机制 4

1.2.3 代码安全性检查机制 4

1.3 搭建Java程序开发环境 4

1.3.1 系统要求 4

1.3.2 下载Java程序开发工具包JDK 4

1.3.3 安装JDK 5

1.3.4 在Windows系统下配置JDK 7

1.4 开发第一个Java应用程序 9

1.4.1 Eclipse编写HelloWorld 9

1.4.2 源文件与命令行执行HelloWorld 12

1.4.3 Java应用程序的基本结构 14

1.5 典型实例 14

第2章 Java变量、数据类型、运算符 15

2.1 标识符和关键字 15

2.1.1 标识符 15

2.1.2 标识符命名规则 15

2.1.3 关键字 15

2.2 常量与变量 16

2.2.1 常量概念及声明 16

2.2.2 枚举类型 16

2.2.3 变量概念及声明 17

2.2.4 变量的作用域 18

2.3 基本数据类型 19

2.3.1 整型 19

2.3.2 浮点型 20

2.3.3 布尔型 20

2.3.4 字符型 20

2.3.5 数据类型转换 21

2.4 运算符 22

2.4.1 算术运算符 23

2.4.2 赋值运算符 23

2.4.3 关系运算符 24

2.4.4 逻辑运算符 24

2.4.5 位运算符 25

2.4.6 自增自减运算符 27

2.4.7 三元运算符 28

2.4.8 运算符的优先级 28

2.5 典型实例 29

第3章 数组 34

3.1 数组的概念 34

3.1.1 什么是数组 34

3.1.2 数组的特点 34

3.1.3 数组的规则 34

3.2 一维数组 35

3.2.1 声明一维数组 35

3.2.2 初始化一维数组 35

3.2.3 访问一维数组 36

3.2.4 修改一维数组元素 36

3.3 数组的常用操作 37

3.3.1 数组长度 37

3.3.2 数组填充 37

3.3.3 数组复制 38

3.3.4 数组比较 38

3.3.5 数组排序 39

3.3.6 在数组中搜索指定元素 40

3.3.7 把数组转换为字符串 40

3.4 多维数组 41

3.4.1 声明二维数组 41

3.4.2 创建二维数组 41

3.4.3 访问二维数组 42

3.4.4 遍历二维数组 42

3.5 典型实例 43

第4章 条件结构和循环结构 51

4.1 条件结构 51

4.1.1 if语句 51

4.1.2 if-else语句 52

4.1.3 if-else-if语句 53

4.1.4 选择语句的嵌套 54

4.1.5 switch语句 55

4.1.6 if与switch的区别 56

4.2 循环结构 56

4.2.1 while循环语句 56

4.2.2 do-while循环语句 57

4.2.3 while与do-while的区别 58

4.2.4 for循环语句 59

4.2.5 嵌套循环语句 60

4.3 跳转语句 62

4.3.1 break跳转语句 62

4.3.2 continue跳转语句 62

4.3.3 break与continue的区别 63

4.3.4 return跳转语句 64

4.4 典型实例 64

第5章 字符串处理 70

5.1 字符 70

5.2 字符串 71

5.2.1 字符串声明与赋值 71

5.2.2 获取字符串长度 72

5.3 字符串基本操作 72

5.3.1 字符串连接 72

5.3.2 字符串比较 73

5.3.3 字符串截取 74

5.3.4 字符串查找 74

5.3.5 字符串替换 75

5.3.6 字符串与字符数组 75

5.3.7 字符串其他常用操作 76

5.4 StringBuffer类 77

5.4.1 认识StringBuffer类 77

5.4.2 StringBuffer类提供的操作方法 77

5.4.3 StringBuffer实例 77

5.4.4 String类与StringBuffer类对比 78

5.5 典型实例 78

第二篇 Java面向对象 82

第6章 面向对象 82

6.1 面向对象编程简介 82

6.1.1 类 82

6.1.2 对象 82

6.1.3 继承 83

6.1.4 接口 84

6.1.5 包 84

6.2 类 84

6.2.1 基本结构 84

6.2.2 类变量 86

6.2.3 类方法 86

6.2.4 类方法命名 87

6.2.5 调用类方法 87

6.2.6 方法重载 88

6.2.7 构造方法 88

6.2.8 方法返回值 89

6.3 抽象类和抽象方法 89

6.3.1 抽象类 89

6.3.2 抽象类实例 89

6.3.3 抽象类的类成员 90

6.3.4 抽象方法 91

6.3.5 抽象类与接口对比 91

6.4 嵌套类 91

6.4.1 嵌套类定义 91

6.4.2 内部类 92

6.4.3 静态嵌套类 92

6.5 对象 92

6.5.1 对象实例 92

6.5.2 创建对象 94

6.5.3 使用对象 96

6.6 this、static、final关键字 96

6.6.1 this关键字 96

6.6.2 static关键字 97

6.6.3 final关键字 97

6.7 控制对类的成员的访问 97

6.8 标注 98

6.8.1 标注用法 98

6.8.2 文档标注 98

6.9 典型实例 99

第7章 继承 104

7.1 继承概述 104

7.1.1 什么是继承 104

7.1.2 类的层次 105

7.1.3 继承示例 105

7.1.4 继承优点 106

7.2 对象类型转换 106

7.2.1 隐式对象类型转换 106

7.2.2 强制对象类型转换 107

7.2.3 使用instanceof运算符 107

7.3 重写和隐藏父类方法 107

7.3.1 重写父类中的方法 108

7.3.2 隐藏父类中的方法 108

7.3.3 方法重写和方法隐藏后的修饰符 109

7.3.4 总结 109

7.4 隐藏父类中的字段 110

7.5 子类访问父类成员 111

7.5.1 子类访问父类私有成员 111

7.5.2 使用super调用父类中重写的方法 112

7.5.3 使用super访问父类中被隐藏的字段 112

7.5.4 使用super调用父类的无参构造方法 113

7.5.5 使用super调用父类的带参构造方法 114

7.5.6 构造方法链 115

7.6 Object类 116

7.7 典型实例 116

第8章 接口和包 121

8.1 接口的概念 121

8.1.1 为什么使用接口 121

8.1.2 Java中的接口 121

8.1.3 作为API的接口 122

8.1.4 接口和多继承 122

8.1.5 Java接口与Java抽象类的区别 122

8.2 定义接口 123

8.2.1 声明接口 123

8.2.2 接口体 124

8.3 实现接口 124

8.3.1 接口的实现 124

8.3.2 接口示例 125

8.3.3 接口的继承 125

8.3.4 实现多个接口时的常量和方法冲突问题 125

8.4 包 127

8.4.1 包的概念 127

8.4.2 创建包 127

8.4.3 包命名惯例 127

8.4.4 导入包 128

8.5 典型实例 128

第9章 集合 133

9.1 Java集合框架 133

9.2 Collection接口 133

9.2.1 转换构造方法 133

9.2.2 Collection接口的定义 133

9.2.3 Collection接口的基本操作 134

9.2.4 遍历Collection接口 134

9.2.5 Collection接口的批量操作 135

9.2.6 Collection接口的数组操作 135

9.3 Set接口 136

9.3.1 Set接口的定义 136

9.3.2 Set接口的基本操作 137

9.3.3 Set接口的批量操作 138

9.3.4 Set接口的数组操作 139

9.4 List接口 139

9.4.1 List接口的定义 139

9.4.2 从Collection继承的操作 139

9.4.3 按位置访问和查找操作 140

9.4.4 List迭代方法 141

9.5 Map接口 142

9.5.1 Map接口的定义 142

9.5.2 Map接口的基本操作 143

9.5.3 Map接口的批量操作 144

9.6 实现 144

9.6.1 实现的类型 144

9.6.2 Set接口的实现 145

9.6.3 List接口的实现 146

9.6.4 Map接口的实现 146

9.7 典型实例 147

第三篇 Swing 157

第10章 第一个图形界面应用程序 157

10.1 Swing简介 157

10.1.1 Swing 157

10.1.2 Swing特点 157

10.2 创建第一个图形界面程序 158

10.3 Swing顶层容器 159

10.3.1 Swing中的顶层容器类 159

10.3.2 容器层 161

10.3.3 组件使用 161

10.3.4 添加菜单栏 162

10.3.5 根面板 162

10.4 JFrame类创建图形界面窗体 162

10.4.1 创建窗体 162

10.4.2 创建窗体示例 163

10.4.3 设置窗口 164

10.4.4 窗口关闭事件 165

10.4.5 窗体API 166

10.5 典型实例 167

第11章 Swing组件 171

11.1 JComponent类 171

11.2 常用基本组件 172

11.2.1 按钮组件JButton 172

11.2.2 复选框组件JCheckBox 172

11.2.3 单选按钮组件JRadioButton 173

11.2.4 文本框组件JTextField 173

11.2.5 密码框组件JPasswordField 173

11.2.6 组合框组件JComboBox 173

11.2.7 滑块组件JSlider 174

11.2.8 微调组制组件JSpinner 174

11.2.9 菜单组件JMenu 174

11.3 不可编辑的信息显示组件 175

11.3.1 标签组件JLabel 175

11.3.2 进度条组件JProgressBar 175

11.3.3 工具提示组件JToolTip 175

11.4 Swing高级组件 176

11.4.1 颜色选择器JColorChooser 176

11.4.2 文件选择器JFileChooser 176

11.4.3 文本编辑组件JEditorPane和JTextPane 177

11.4.4 文本区组件JTextArea 178

11.4.5 表组件JTable 178

11.4.6 树组件JTree 179

11.4.7 面板组件JPanel 180

11.4.8 滚动面板JScrollPane 180

11.4.9 分割面板JSplitPane 181

11.4.10 选项卡面板JTabbedPane 181

11.4.11 工具栏JToolBar 182

11.5 典型实例 182

第12章 标准布局 189

12.1 标准布局管理器简介 189

12.1.1 BorderLayout边框布局 189

12.1.2 BoxLayout布局 189

12.1.3 CardLayout卡片布局 190

12.1.4 FlowLayout流动布局 191

12.1.5 GridLayout网格布局 191

12.1.6 GridBagLayout网格包布局 191

12.2 布局管理器的使用 192

12.2.1 使用BorderLayout 192

12.2.2 使用BoxLayout 193

12.2.3 使用CardLayout 193

12.2.4 使用FlowLayout 194

12.2.5 使用GridLayout 194

12.2.6 使用GridbagLayout 194

12.3 使用布局管理器技巧 195

12.3.1 设置布局管理器 195

12.3.2 向容器中添加组件 196

12.3.3 提供组件大小和排列策略 196

12.3.4 设置组件之间的间隙 196

12.3.5 设置容器的语言方向 196

12.3.6 选择布局管理器 197

12.4 典型实例 198

第13章 事件处理 205

13.1 事件处理原理 205

13.1.1 事件处理模型 205

13.1.2 事件类型 206

13.1.3 监听器类型 207

13.2 动作事件 208

13.2.1 动作事件步骤 208

13.2.2 动作事件过程 208

13.2.3 按钮触发动作事件 209

13.2.4 文本框触发事件 210

13.3 选项事件 211

13.3.1 选项事件步骤 211

13.3.2 选项事件过程 212

13.4 列表选择事件 212

13.4.1 列表事件步骤 212

13.4.2 列表事件过程 212

13.5 焦点事件 213

13.5.1 焦点事件步骤 213

13.5.2 焦点事件过程 213

13.6 键盘事件 214

13.6.1 键盘事件步骤 214

13.6.2 处理键盘过程 214

13.7 鼠标事件 215

13.7.1 鼠标事件步骤 215

13.7.2 鼠标事件过程 215

13.8 鼠标移动事件 216

13.8.1 鼠标移动事件步骤 216

13.8.2 鼠标移动事件过程 216

13.9 典型实例 217

第四篇 Java编程技术 223

第14章 异常处理 223

14.1 Java异常 223

14.1.1 编译错误 223

14.1.2 运行错误 223

14.1.3 逻辑错误 224

14.1.4 异常处理机制 225

14.1.5 异常处理类 225

14.1.6 异常处理原则 227

14.2 处理异常 227

14.2.1 try-catch语句 228

14.2.2 多个catch子句 228

14.2.3 finally子句 229

14.2.4 可嵌入的try块 229

14.3 抛出异常 230

14.3.1 使用throws抛出异常 230

14.3.2 使用throw抛出异常 231

14.3.3 异常类常用方法 232

14.4 自定义异常 232

14.4.1 创建自定义异常类 232

14.4.2 处理自定义异常 232

14.5 典型实例 233

第15章 输入与输出 235

15.1 流 235

15.1.1 流的概念 235

15.1.2 输入流与输出流 236

15.1.3 字节流与字符流 237

15.2 字节流 237

15.2.1 InputStream类与OutputStream类 237

15.2.2 FileInputStream类与FileOutputStream类 238

15.2.3 BufferedInputStream类与BufferedOutputStream类 239

15.3 字符流 240

15.3.1 Reader类和Writer类 240

15.3.2 FileReader类和FileWriter类 240

15.3.3 BufferedReader类和BufferedWriter类 242

15.3.4 PrintStream类和PrintWriter类 243

15.4 实现用户输入 243

15.4.1 使用System.in获取用户输入 243

15.4.2 使用Scanner类获取用户输入 244

15.5 典型实例 244

第16章 线程 251

16.1 线程概念 251

16.1.1 线程的属性 251

16.1.2 线程的组成 252

16.1.3 线程的工作原理 252

16.1.4 线程的状态 253

16.1.5 线程的优先级 253

16.1.6 进程的概念 253

16.1.7 线程和进程的区别 254

16.2 线程对象 254

16.2.1 线程对象和线程的区别 254

16.2.2 定义并启动一个线程 255

16.2.3 使用Sleep暂停线程执行 255

16.2.4 中断线程 256

16.2.5 join方法 256

16.2.6 死锁 257

16.3 线程同步 257

16.3.1 同步方法 257

16.3.2 固定锁和同步 258

16.4 典型实例 259

第17章 网络编程 262

17.1 网络编程基础 262

17.1.1 什么是TCP协议 262

17.1.2 什么是IP协议 262

17.1.3 什么是TCP/IP 263

17.1.4 什么是UDP协议 263

17.1.5 什么是端口 263

17.1.6 什么是套接字 263

17.1.7 java.net包 263

17.2 InetAddress类 264

17.3 URL网络编程 265

17.3.1 URL 265

17.3.2 标识符语法 266

17.3.3 URLConnection类 266

17.4 TCP的网络编程 267

17.4.1 Socket 267

17.4.2 重要的Socket API 268

17.4.3 服务器端程序设计 268

17.4.4 客户端程序设计 270

17.5 UDP网络编程 270

17.5.1 UDP通信概念 270

17.5.2 UDP的特性 271

17.5.3 UDP的应用 272

17.5.4 UDP与TCP的区别 272

17.6 典型实例 272

第18章 数据库应用程序开发基础 277

18.1 数据库 277

18.1.1 数据库简介 277

18.1.2 数据库中数据的性质 277

18.1.3 数据库的特点 278

18.2 JDBC概述 278

18.2.1 JDBC介绍 279

18.2.2 JDBC的4种驱动程序 280

18.2.3 JDBC对B/S和C/S模式的支持 281

18.3 java.sql包 281

18.4 SQL语句 282

18.4.1 SQL语句的分类 282

18.4.2 SELECT语句 282

18.4.3 INSERT语句 282

18.4.4 UPDATE语句 283

18.4.5 DELETE语句 283

18.4.6 CREATE语句 283

18.4.7 DROP语句 283

18.5 典型实例 283

第19章 使用Swing组件创建数据库应用程序 286

19.1 JComboBox组件创建数据库应用程序 286

19.1.1 创建JComboBox 286

19.1.2 DefaultComboBoxModel创建JComboBox 288

19.2 JList组件创建数据库应用程序 289

19.2.1 DefaultListModel创建JList 289

19.2.2 ListModel创建JList 290

19.3 JTable组件创建数据库应用程序 291

19.3.1 JTable相关的类 291

19.3.2 DefaultTableModel创建JTable 292

19.4 典型实例 293

第五篇 Java Web基础 297

第20章 JSP 297

20.1 JSP简介 297

20.1.1 MVC模式 297

20.1.2 JSP技术的优点 298

20.2 基本语法 298

20.2.1 注释 298

20.2.2 JSP指令 299

20.3 JSP脚本元素 302

20.3.1 JSP声明 302

20.3.2 JSP表达式 302

20.4 JSP动作 303

20.4.1 include动作元素 303

20.4.2 forword动作元素 304

20.4.3 plugin动作元素 304

20.4.4 param动作元素 305

20.4.5 useBean及setProperty和getProperty动作元素 305

20.5 JSP内置对象 307

20.5.1 request对象 308

20.5.2 response对象 309

20.5.3 session对象 309

20.5.4 application对象 310

20.5.5 out对象 311

20.5.6 config对象 312

20.5.7 exception对象 313

20.5.8 pageContext对象 313

20.6 典型实例 314

第21章 Servlet 318

21.1 Servlet简介 318

21.1.1 什么是Servlet 318

21.1.2 Servlet的生命周期 318

21.1.3 Servlet的基本结构 319

21.2 HTTPServlet应用编程接口 319

21.2.1 init()方法 320

21.2.2 service()方法 320

21.2.3 doGet()方法 320

21.2.4 doPost()方法 320

21.2.5 destroy()方法 320

21.2.6 GetServletConfig()方法 321

21.2.7 GetServletInfo()方法 321

21.3 创建HttpServlet 321

21.4 调用HttpServlet 322

21.4.1 由URL调用Servlet 322

21.4.2 在<FORM>标记中指定Servlet 323

21.4.3 在<SERVLET>标记中指定Servlet 323

21.4.4 在ASP文件中调用Servlet 324

21.5 Servlet之间的跳转 324

21.5.1 转向(Forward) 324

21.5.2 重定向(Redirect) 325

21.6 典型实例 326

第六篇 Java实战 330

第22章 案例:教务管理系统(一) 330

22.1 总体设计与概要说明 330

22.1.1 功能模块划分 330

22.1.2 功能模块说明 330

22.2 业务流程图 331

22.2.1 登录模块流程 331

22.2.2 班主任管理模块流程 332

22.2.3 教务主任管理模块 332

22.2.4 人事管理模块 332

22.3 数据库设计 333

22.3.1 数据库需求分析 333

22.3.2 数据库概念结构设计 333

22.3.3 数据库逻辑结构设计 335

22.3.4 数据库结构的实现 338

第23章 案例:教务管理系统(二) 340

23.1 应用程序实现 340

23.2 实现登录模块 341

23.3 管理界面介绍 342

23.4 实现修改密码模块 344

23.4.1 jbInit()方法 346

23.4.2 修改用户权限 347

23.4.3 修改用户密码 347

23.5 实现“关于”对话框 348

23.6 实现人事管理模块 349

23.6.1 退出系统管理 351

23.6.2 创建组件及处理事件 353

23.6.3 动态显示登录者相关信息 355

23.6.4 员工个人信息的查询 357

23.6.5 事件处理方法回调 357

23.7 实现TeacherInfoBean信息封装类 359

23.8 实现DepartmentAction、TeacherAction业务处理类 360

23.8.1 实现DepartmentAction类 360

23.8.2 实现TeacherAction类 361

23.9 软件部署 365

23.9.1 组织程序所需资源 365

23.9.2 运行和测试程序 366

23.10 项目总结 366