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

  • 购买积分:12 如何计算积分?
  • 作  者:郭现杰,张权编著
  • 出 版 社:北京:电子工业出版社
  • 出版年份:2014
  • ISBN:9787121242526
  • 页数:301 页
图书介绍:本书针对初学和自学读者的特点,以通俗易懂的语言介绍Java语言,全书内容分为六篇共23章,讲解了Java的各个方面。内容包括Java语言的发展、环境配置、基本语法、流程控制语句、字符串处理、数组、面向对象、图形界面设计、输入/输出、处理异常、网络编程、数据库及Java Web基础JSP和Servlet。最后通过一个大型项目——教务管理系统贯穿所有学习知识点,让读者更好地体会Java语言编程开发。本书运用大量示例,让读者在实战中体会编程的快乐。

第一篇 Java基础 1

第1章 第一个Java程序——HelloWorld(教学视频:14分钟) 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

1.6 习题 14

第2章 Java变量、数据类型、运算符(教学视频:20分钟) 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 逻辑运算符 25

2.4.5 位运算符 25

2.4.6 自增自减运算符 28

2.4.7 三元运算符 28

2.4.8 运算符的优先级 28

2.5 小结 29

2.6 习题 29

第3章 数组(教学视频:25分钟) 30

3.1 数组的概念 30

3.1.1 什么是数组 30

3.1.2 数组的特点 30

3.1.3 数组的规则 30

3.2 一维数组 31

3.2.1 声明一维数组 31

3.2.2 初始化一维数组 31

3.2.3 访问一维数组 32

3.2.4 修改一维数组元素 32

3.3 数组的常用操作 33

3.3.1 数组长度 33

3.3.2 数组填充 33

3.3.3 数组复制 34

3.3.4 数组比较 34

3.3.5 数组排序 35

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

3.3.7 把数组转换为字符串 36

3.4 多维数组 37

3.4.1 声明二维数组 37

3.4.2 创建二维数组 37

3.4.3 访问二维数组 38

3.4.4 遍历二维数组 38

3.5 小结 39

3.6 习题 39

第4章 条件结构和循环结构(教学视频:23分钟) 40

4.1 条件结构 40

4.1.1 if语句 40

4.1.2 if-else语句 41

4.1.3 if-else-if语句 42

4.1.4 选择语句的嵌套 43

4.1.5 switch语句 44

4.1.6 if与switch的区别 45

4.2 循环结构 45

4.2.1 while循环语句 45

4.2.2 do-while循环语句 46

4.2.3 while与do-while的区别 47

4.2.4 for循环语句 48

4.2.5 嵌套循环语句 49

4.3 跳转语句 51

4.3.1 break跳转语句 51

4.3.2 continue跳转语句 51

4.3.3 break与continue的区别 52

4.3.4 return跳转语句 53

4.4 实例 53

4.5 小结 54

4.6 习题 54

第5章 字符串处理(教学视频:25分钟) 55

5.1 字符 55

5.2 字符串 56

5.2.1 字符串声明与赋值 56

5.2.2 获取字符串长度 57

5.3 字符串基本操作 57

5.3.1 字符串连接 57

5.3.2 字符串比较 58

5.3.3 字符串截取 59

5.3.4 字符串查找 59

5.3.5 字符串替换 60

5.3.6 字符串与字符数组 60

5.3.7 字符串其他常用操作 61

5.4 StringBuffer类 61

5.4.1 认识StringBuffer类 62

5.4.2 StringBuffer类提供的操作方法 62

5.4.3 StringBuffer实例 62

5.4.4 String类与StringBuffer类对比 63

5.5 实例 63

5.6 小结 64

5.7 习题 64

第二篇 Java面向对象 65

第6章 面向对象(教学视频:30分钟) 65

6.1 面向对象编程简介 65

6.1.1 类 65

6.1.2 对象 65

6.1.3 继承 66

6.1.4 接口 67

6.1.5 包 67

6.2 类 67

6.2.1 基本结构 67

6.2.2 类变量 68

6.2.3 类方法 69

6.2.4 类方法命名 70

6.2.5 调用类方法 70

6.2.6 方法重载 70

6.2.7 构造方法 71

6.2.8 方法返回值 71

6.3 抽象类和抽象方法 72

6.3.1 抽象类 72

6.3.2 抽象类实例 72

6.3.3 抽象类的类成员 73

6.3.4 抽象方法 73

6.3.5 抽象类与接口对比 74

6.4 嵌套类 74

6.4.1 嵌套类定义 74

6.4.2 内部类 75

6.4.3 静态嵌套类 75

6.5 对象 75

6.5.1 对象实例 75

6.5.2 创建对象 77

6.5.3 使用对象 78

6.6 this、static、final关键字 79

6.6.1 this关键字 79

6.6.2 static关键字 79

6.6.3 final关键字 80

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

6.8 标注 80

6.8.1 标注用法 81

6.8.2 文档标注 81

6.9 小结 82

6.10 习题 82

第7章 继承(教学视频:20分钟) 83

7.1 继承概述 83

7.1.1 什么是继承 83

7.1.2 类的层次 84

7.1.3 继承示例 84

7.1.4 继承优点 85

7.2 对象类型转换 85

7.2.1 隐式对象类型转换 85

7 2.2 强制对象类型转换 86

7.2.3 使用instanceof运算符 86

7.3 重写和隐藏父类方法 86

7.3.1 重写父类中的方法 86

7.3.2 隐藏父类中的方法 87

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

7.3.4 总结 88

7.4 隐藏父类中的字段 89

7.5 子类访问父类成员 90

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

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

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

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

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

7.5.6 构造方法链 94

7.6 Object类 95

7.7 小结 95

7.8 习题 96

第8章 接口和包(教学视频:16分钟) 97

8.1 接口的概念 97

8.1.1 为什么使用接口 97

8.1.2 Java中的接口 97

8.1.3 作为API的接口 98

8.1.4 接口和多继承 98

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

8.2 定义接口 99

8.2.1 声明接口 99

8.2.2 接口体 100

8.3 实现接口 100

8.3.1 接口的实现 100

8.3.2 接口示例 101

8.3.3 接口的继承 101

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

8.4 包 103

8.4.1 包的概念 103

8.4.2 创建包 103

8.4.3 包命名惯例 103

8.4.4 导入包 104

8.5 小结 104

8.6 习题 104

第9章 集合(教学视频:17分钟) 105

9.1 Java集合框架 105

9.2 Collection接口 105

9.2.1 转换构造方法 105

9.2.2 Collection接口的定义 105

9.2.3 Collection接口的基本操作 106

9.2.4 遍历Collection接口 106

9.2.5 Collection接口的批量操作 107

9.2.6 Collection接口的数组操作 107

9.3 Set接口 108

9.3.1 Set接口的定义 108

9.3.2 Set接口的基本操作 109

9.3.3 Set接口的批量操作 110

9.3.4 Set接口的数组操作 111

9.4 List接口 111

9.4.1 List接口的定义 111

9.4.2 从Collection继承的操作 111

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

9.4.4 List迭代方法 113

9.5 Map接口 114

9.5.1 Map接口的定义 114

9.5.2 Map接口的基本操作 115

9.5.3 Map接口的批量操作 116

9.6 实现 116

9.6.1 实现的类型 116

9.6.2 Set接口的实现 117

9.6.3 List接口的实现 118

9.6.4 Map接口的实现 118

9.7 小结 119

9.8 习题 119

第三篇 Swing 120

第10章 第一个图形界面应用程序(教学视频:12分钟) 120

10.1 Swing简介 120

10.1.1 Swing 120

10.1.2 Swing特点 120

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

10.3 Swing顶层容器 122

10.3.1 Swing中的顶层容器类 122

10.3.2 容器层 124

10.3.3 组件使用 124

10.3.4 添加菜单栏 124

10.3.5 根面板 125

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

10.4.1 创建窗体 125

10.4.2 创建窗体示例 126

10.4.3 设置窗口 127

10.4.4 窗口关闭事件 128

10.4.5 窗体API 129

10.5 小结 130

10.6 习题 131

第11章 Swing组件(教学视频:24分钟) 132

11.1 JComponent类 132

11.2 常用基本组件 133

11.2.1 按钮组件JButton 133

11.2.2 复选框组件JCheckBox 133

11.2.3 单选按钮组件JRadioButton 134

11.2.4 文本框组件JTextField 134

11.2.5 密码框组件 JPasswordField 134

11.2.6 组合框组件JComboBox 134

11.2.7 滑块组件JSlider 135

11.2.8 微调组制组件JSpinner 135

11.2.9 菜单组件JMenu 135

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

11.3.1 标签组件JLabel 136

11.3.2 进度条组件JProgressBar 136

11.3.3 工具提示组件JToolTip 136

11.4 Swing高级组件 137

11.4.1 颜色选择器JColor Chooser 137

11.4.2 文件选择器JFile Chooser 137

11.4.3 文本编辑组件JEditorPane 和JTextPane 138

11.4.4 文本区组件JTextArea 139

11.4.5 表组件JTable 139

11.4.6 树组件JTree 140

11.4.7 面板组件JPanel 141

11.4.8 滚动面板JScrollPane 141

11.4.9 分割面板JSplitPane 141

11.4.10 选项卡面板JTabbedPane 142

11.4.11 工具栏JToolBar 142

11.5 小结 143

11.6 习题 143

第12章 标准布局(教学视频:18分钟) 144

12.1 标准布局管理器简介 144

12.1.1 BorderLayout边框布局 144

12.1.2 BoxLayout布局 144

12.1.3 CardLayout卡片布局 145

12.1.4 FlowLayout流动布局 146

12.1.5 GridLayout 网格布局 146

12.1.6 GridBagLayout 网格包布局 146

12.2 布局管理器的使用 147

12.2.1 使用BorderLayout 147

12.2.2 使用BoxLayout 148

12.2.3 使用 CardLayout 148

12.2.4 使用FlowLayout 149

12.2.5 使用GridLayout 149

12.2.6 使用GridbagLayout 150

12.3 使用布局管理器技巧 150

12.3.1 设置布局管理器 150

12.3.2 向容器中添加组件 151

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

12.3.4 设置组件之间的间隙 151

12.3.5 设置容器的语言方向 152

12.3.6 选择布局管理器 152

12.4 实例:设计用户登录界面 153

12.4.1 设计界面布局 153

12.4.2 代码实现 153

12.5 小结 156

12.6 习题 156

第13章 事件处理(教学视频:13分钟) 157

13.1 事件处理原理 157

13.1.1 事件处理模型 157

13.1.2 事件类型 158

13.1.3 监听器类型 159

13.2 动作事件 160

13.2.1 动作事件步骤 160

13.2.2 动作事件过程 160

13.2.3 按钮触发动作事件 161

13.2.4 文本框触发事件 162

13.3 选项事件 163

13.3.1 选项事件步骤 163

13.3.2 选项事件过程 164

13.4 列表选择事件 164

13.4.1 列表事件步骤 164

13.4.2 列表事件过程 164

13.5 焦点事件 165

13.5.1 焦点事件步骤 165

13.5.2 焦点事件过程 165

13.6 键盘事件 166

13.6.1 键盘事件步骤 166

13.6.2 处理键盘过程 166

13.7 鼠标事件 167

13.7.1 鼠标事件步骤 167

13.7.2 鼠标事件过程 167

13.8 鼠标移动事件 168

13.8.1 鼠标移动事件步骤 168

13.8.2 鼠标移动事件过程 168

13.9 实例:一个简单的用户登录验证程序 169

13.9.1 程序功能 169

13.9.2 为程序实现动作事件监听器 170

13.9.3 为按钮注册监听器 171

13.9.4 实现ActionListener接口中的actionPerformed方法 171

13.9.5 编译并运行程序 172

13.10 小结 172

13.11 习题 172

第四篇 Java编程技术 173

第14章 异常处理(教学视频:16分钟) 173

14.1 Java异常 173

14.1.1 编译错误 173

14.1.2 运行错误 173

14.1.3 逻辑错误 174

14.1.4 异常处理机制 175

14.1.5 异常处理类 175

14.1.6 异常处理原则 177

14.2 处理异常 178

14.2.1 try-catch语句 178

14.2.2 多个catch子句 178

14.2.3 finally子句 179

14.2.4 可嵌入的try块 180

14.3 抛出异常 180

14.3.1 使用throws抛出异常 181

14.3.2 使用throw抛出异常 181

14.3.3 异常类常用方法 182

14.4 自定义异常 182

14.4.1 创建自定义异常类 182

14.4.2 处理自定义异常 183

14.5 小结 184

14.6 习题 184

第15章 输入与输出(教学视频:14分钟) 185

15.1 流 185

15.1.1 流的概念 185

15.1.2 输入流与输出流 186

15.1.3 字节流与字符流 187

15.2 字节流 187

15.2.1 InputStream类与OutputStream类 187

15.2.2 FileInputStream类与FileOutputStream类 188

15.2.3 BufferedInputStream类与BufferedOutputStream类 189

15.3 字符流 190

15.3.1 Reader类和Writer类 190

15.3.2 FileReader类和FileWriter类 191

15.3.3 BufferedReader类和BufferedWriter类 192

15.3.4 PrintStream类和PrintWriter类 193

15.4 实现用户输入 193

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

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

15.5 小结 195

15.6 习题 195

第16章 线程(教学视频:18分钟) 196

16.1 线程概念 196

16.1.1 线程的属性 196

16.1.2 线程的组成 197

16.1.3 线程的工作原理 197

16.1.4 线程的状态 198

16.1.5 线程的优先级 198

16.1.6 进程的概念 198

16.1.7 线程和进程的区别 199

16.2 线程对象 199

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

16.2.2 定义并启动一个线程 200

16.2.3 使用Sleep暂停线程执行 200

16.2.4 中断线程 201

16.2.5 join方法 201

16.2.6 死锁 202

16.3 线程同步 202

16.3.1 同步方法 202

16.3.2 固定锁和同步 203

16.4 线程使用实例 204

16.5 小结 206

16.6 习题 206

第17章 网络编程(教学视频:8分钟) 207

17.1 网络编程基础 207

17.1.1 什么是TCP协议 207

17.1.2 什么是IP协议 207

17.1.3 什么是TCP/IP 208

17.1.4 什么是UDP协议 208

17.1.5 什么是端口 208

17.1.6 什么是套接字 208

17.1.7 java.net包 208

17.2 InetAddress类 209

17.3 URL网络编程 210

17.3.1 URL 210

17.3.2 符语法 211

17.3.3 URLConnection类 211

17.4 TCP的网络编程 212

17.4.1 Socket 212

17.4.2 重要的SocketAPI 213

17.4.3 服务器端程序设计 213

17.4.4 客户端程序设计 215

17.5 UDP网络编程 215

17.5.1 UDP通信概念 216

17.5.2 UDP的特性 216

17.5.3 UDP的应用 217

17.5.4 UDP与 TCP的区别 217

17.6 小结 218

17.7 习题 218

第18章 数据库应用程序开发基础(教学视频:22分钟) 219

18.1 数据库 219

18.1.1 数据库简介 219

18.1.2 数据库中数据的性质 219

18.1.3 数据库的特点 220

18.2 JDBC概述 220

18.2.1 JDBC介绍 221

18.2.2 JDBC的4种驱动程序 222

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

18.3 java.sql包 223

18.4 SQL语句 224

18.4.1 SQL语句的分类 224

18.4.2 SELECT语句 224

18.4.3 INSERT语句 224

18.4.4 UPDATE语句 225

18.4.5 DELETE语句 225

18.4.6 CREATE语句 225

18.4.7 DROP语句 225

18.5 访问数据库 225

18.5.1 创建数据库连接 226

18.5.2 对数据库进行查询 226

18.5.3 增加、修改、删除数据库中的数据 227

18.6 小结 228

18.7 习题 228

第19章 使用Swing组件创建数据库应用程序(教学视频:10分钟) 229

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

19.1.1 创建JComboBox 229

19.1.2 DefaultComboBoxModel创建JComboBox 231

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

19.2.1 DefaultListModel创建JList 232

19.2.2 ListModel创建JList 233

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

19.3.1 JTable相关的类 234

19.3.2 DefaultTableModel创建JTable 235

19.4 小结 236

19.5 习题 236

第五篇 Java Web基础 237

第20章 JSP(教学视频:25分钟) 237

20.1 JSP简介 237

20.1.1 MVC模式 237

20.1.2 JSP技术的优点 238

20.2 基本语法 238

20.2.1 注释 238

20.2.2 JSP指令 239

20.3 JSP脚本元素 241

20.3.1 JSP声明 242

20.3.2 JSP表达式 242

20.4 JSP动作 243

20.4.1 include动作元素 243

20.4.2 forword动作元素 244

20.4.3 plugin动作元素 244

20.4.4 param动作元素 245

20.4.5 useBean及setProperty和getProperty动作元素 245

20.5 JSP内置对象 247

20.5.1 request对象 247

20.5.2 response对象 249

20.5.3 session对象 249

20.5.4 application对象 250

20.5.5 out对象 251

20.5.6 config对象 252

20.5.7 exception对象 252

20.5.8 pageContext对象 253

20.6 小结 254

20.7 习题 254

第21章 Servlet(教学视频:23分钟) 255

21.1 Servlet简介 255

21.1.1 什么是Servlet 255

21.1.2 Servlet的生命周期 255

21.1.3 Servlet的基本结构 256

21.2 HTTPServlet应用编程接口 256

21.2.1 init()方法 257

21.2.2 service()方法 257

21.2.3 doGet()方法 257

21.2.4 doPost()方法 257

21.2.5 destroy()方法 257

21.2.6 GetServletConfi()方法 258

21.2.7 GetServletInfo()方法 258

21.3 创建HttpServlet 258

21.4 调用HttpServlet 259

21.4.1 由URL调用Servlet 259

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

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

21.4.4 在ASP文件中调用Servlet 261

21.5 Servlet之间的跳转 261

21.5.1 转向(Forward) 261

21.5.2 重定向(Redirect) 262

21.6 小结 263

21.7 习题 263

第六篇 Java实战 264

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

22.1 总体设计与概要说明 264

22.1.1 功能模块划分 264

22.1.2 功能模块说明 265

22.2 业务流程图 265

22.2.1 登录模块流程 265

22.2.2 班主任管理模块流程 266

22.2.3 教务主任管理模块 266

22.2.4 人事管理模块 266

22.3 数据库设计 267

22.3.1 数据库需求分析 267

22.3.2 数据库概念结构设计 267

22.3.3 数据库逻辑结构设计 269

22.3.4 数据库结构的实现 272

22.4 小结 273

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

23.1 应用程序实现 274

23.2 实现登录模块 275

23.3 管理界面介绍 276

23.4 实现修改密码模块 279

23.4.1 jblnit()方法 280

23.4.2 修改用户权限 281

23.4.3 修改用户密码 281

23.5 实现“关于”对话框 282

23.6 实现人事管理模块介绍 284

23.6.1 退出系统管理 286

23.6.2 创建组件及处理事件 288

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

23.6.4 员工个人信息的查询 291

23.6.5 事件处理方法回调 292

23.7 实现TeacherInfoBean信息封装类 293

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

23.8.1 实现DepartmentAction类 295

23.8.2 实现TeacherAction类 295

23.9 软件部署 300

23.9.1 组织程序所需资源 300

23.9.2 运行和测试程序 300

23.10 项目总结 300