《JAVA语言程序设计(JAVA7)—入门与提高篇》PDF下载

  • 购买积分:13 如何计算积分?
  • 作  者:李绪成,王法胜主编
  • 出 版 社:清华大学出版社
  • 出版年份:2014
  • ISBN:
  • 页数:393 页
图书介绍:

第1章 Java语言快速入门 1

1.1引言 1

1.1.1程序与软件 1

1.1.2程序设计语言 1

1.1.3流行的程序设计语言 2

1.1.4面向对象与面向过程 2

1.1.5机器语言、汇编语言和高级语言 2

1.1.6解释与编译 3

1.2 Java语言概述 3

1.2.1 Java语言的发展历史 3

1.2.2 Java 7的架构 4

1.2.3 Java语言的特点 6

1.2.4 Java的3个版本 6

1.2.5 Java程序的运行过程 7

1.3 Java运行环境 8

1.3.1 JDK下载 8

1.3.2系统需求 8

1.3.3安装JDK 9

1.3.4配置环境变量Path 10

1.4第一个Java程序 11

1.4.1编写源代码 11

1.4.2把源文件编译成字节码文件 12

1.4.3使用java命令运行字节码文件 14

1.5使用Eclipse编写Java程序 15

1.5.1下载 15

1.5.2安装 15

1.5.3配置 16

1.5.4编写Java程序 18

1.6 Java语言的基本符号 23

1.6.1 Java语言使用的编码 23

1.6.2数字常量 23

1.6.3字符常量 23

1.6.4字符串常量 24

1.6.5布尔常量 24

1.6.6标识符 24

1.6.7保留字 25

1.6.8运算符 25

1.6.9分隔符 25

1.6.10 null符号 26

1.6.11 void符号 26

1.6.12注释 26

1.7实例:输出各种基本数据 27

小结 28

第2章 Java基本编码能力培养 29

2.1信息表示 29

2.1.1 8种基本数据类型 29

2.1.2引用类型的代表String类型 30

2.1.3变量声明 31

2.1.4使用变量表示信息(为变量赋值) 31

2.1.5实例:使用变量表示信息并输出 34

2.2输入各种类型的数据 35

2.2.1通过Scanner输入int类型的数据 35

2.2.2通过Scanner输入其他类型的数据 36

2.3进行各种运算 38

2.3.1赋值运算符 38

2.3.2算术运算符 39

2.3.3自增、自减运算符 41

2.3.4比较(关系)运算符 42

2.3.5逻辑运算符 43

2.3.6位运算符 45

2.3.7移位运算符 46

2.3.8条件运算符 48

2.3.9字符串连接运算符 48

2.3.10复合赋值运算符 50

2.4顺序结构 50

2.5选择结构 51

2.5.1基本选择if…else 51

2.5.2变形1:if 53

2.5.3变形2:if-else if-else 53

2.5.4多选择switch语句 56

2.5.5实例:计算个人所得税 58

2.6循环结构 59

2.6.1 for循环 59

2.6.2 while循环和do while循环 63

2.6.3 cotinue和break 65

2.6.4死循环 66

2.6.5死循环实例:学生信息管理系统的菜单设计 67

2.6.6实例:求多个数字的最大值、最小值和平均值 68

2.7数组1 69

2.7.1一维数组的定义 69

2.7.2为数组申请空间 70

2.7.3一维数组元素的访问 71

2.7.4为数组元素赋值和遍历数组 71

2.7.5实例:查找、反转、排序 73

2.7.6使用Arrays管理数组:排序、复制、查找和填充 75

2.7.7二维数组 79

2.8方法 82

2.8.1方法的定义 82

2.8.2方法的调用 84

2.8.3传值和传引用 85

2.8.4方法的递归调用 86

2.8.5变长参数方法 87

2.8.6实例:使用数组表示学生信息实现学生信息管理 90

第3章 面向对象基础 93

3.1面向对象的基本概念 93

3.1.1对象观 93

3.1.2类型观 96

3.1.3对象之间的消息传递 97

3.1.4抽象过程 98

3.2编写类和创建对象 100

3.2.1使用class定义类 100

3.2.2使用new实例化对象 102

3.2.3通过对象引用访问对象 103

3.2.4为类定义包 106

3.2.5类的访问控制符 106

3.2.6成员的访问控制符 107

3.2.7构造方法 108

3.2.8成员变量的初始化 110

3.2.9使用this访问成员变量和方法 110

3.2.10使用this访问自身的构造方法 111

3.2.11访问器方法 112

3.2.12 static成员变量及static初始化块 113

3.2.13 static成员方法 115

3.3基本数据类型和封装类型 116

3.3.1基本数据类型对应的封装类型 116

3.3.2从基本数据类型到封装类型的转换 116

3.3.3从封装类型到基本数据类型的转换 117

3.3.4 Integer提供的其他常用方法 117

3.4数组2 118

3.4.1对象数组与基本数据类型数组的比较 118

3.4.2实例:使用Student数组实现学生信息管理系统 121

3.5 String、StringBuffer和StringBuilder 126

3.5.1 String类 126

3.5.2 StringBuffer 136

3.5.3 StringBuilder 141

3.5.4 String与基本数据类型之间的转换 141

3.6常用工具 143

3.6.1 Math 143

3.6.2 Random 145

3.6.3实例:模拟抽奖 146

3.6.4 NumberFormat和DecimalFormat 147

3.6.5 Date和Calendar 148

3.6.6 DateFormat和SimpleDateFormat 151

3.6.7 MessageFormat 155

3.6.8 System.out.printf和System.out.format 157

3.6.9 System 159

3.6.10 BigInteger和BigDecimal 161

第4章 深入面向对象 164

4.1实现继承 164

4.1.1实现继承 164

4.1.2访问控制符 166

4.1.3定义与父类同名的成员变量 171

4.1.4成员方法的继承与重写 172

4.1.5构造方法与继承 174

4.1.6子类、父类成员的初始化顺序 178

4.2 final成员 179

4.2.1 final修饰局部变量 179

4.2.2 final修饰成员变量 180

4.2.3 final修饰方法 181

4.2.4 final修饰类 182

4.3 abstract 182

4.3.1抽象方法 182

4.3.2抽象类 183

4.4接口 185

4.4.1接口的定义 185

4.4.2实现接口 186

4.4.3接口继承接口 188

4.4.4接口和抽象类的区别 189

4.5向上转型和强制类型转换 189

4.5.1向上转型 189

4.5.2方法的实参和方法返回值中使用子类实例 190

4.5.3面向接口的编程 191

4.5.4强制类型转换和ClassCastException 191

4.5.5 instanceof操作符 192

4.6多态性 193

4.6.1动态联编 193

4.6.2多态性及实现多态的三个条件 193

4.6.3实例:画图软件设计 194

4.7 Object和Class 195

4.7.1 Object 195

4.7.2 Class 196

4.8对象之间关系的实现 198

4.8.1一对一关系的实现 198

4.8.2一对多和多对一关系的实现 200

4.8.3多对多关系的实现 202

4.8.4实例:创建整数链表 204

4.9内部类 207

4.9.1作为类成员的内部类 207

4.9.2成员方法中定义的内部类 212

4.9.3匿名内部类 213

第5章 编码能力提升 216

5.1异常处理 216

5.1.1什么是异常处理 216

5.1.2三种类型的异常 217

5.1.3非检查性异常的处理 218

5.1.4使用try…catch…finally对异常处理 218

5.1.5 try-with-resources语句 223

5.1.6通过throws声明方法的异常 224

5.1.7自定义异常和异常的抛出 225

5.1.8实例:对年龄的异常处理 226

5.2输入输出(I/O)流 228

5.2.1通过File类对文件操作 228

5.2.2输入输出流的分类 232

5.2.3 FileInputStream 234

5.2.4 FileOutputStream 235

5.2.5 FileReader 237

5.2.6 FileWriter 238

5.2.7使用缓冲流 239

5.2.8 DataInputStream和DataOutputStream 240

5.2.9标准输入输出 242

5.2.10 Serializable和Exernalizable 244

5.2.11 ObjectOutputStream与ObjectInputStream 245

5.2.12使用NIO中的Files读取文件属性 247

5.2.13使用NIO中的Files访问文件 250

5.2.14使用NIO中的Files管理文件和文件夹 255

5.2.15遍历文件夹 260

5.2.16实例:统计代码量 262

5.2.17实例:使用文件存储学生信息进行学生信息管理 263

5.3泛型 264

5.3.1泛型的定义 264

5.3.2泛型的使用 265

5.3.3复杂泛型 266

5.4集合框架 267

5.4.1集合概述 267

5.4.2 Collection接口 267

5.4.3 Set接口和SortedSort接口 268

5.4.4 List接口 269

5.4.5 Map接口和SortedMap接口 269

5.4.6 Iterator接口和Enumeration接口 270

5.4.7 HashSet类 271

5.4.8 TreeSet类 274

5.4.9 ArrayList类 275

5.4.10实例:使用ArrayList实现学生信息管理系统 277

5.4.11 LinkedList类 280

5.4.12 Vector类 281

5.4.13 Hashtable类 281

5.4.14 HashMap类 282

5.4.15 TreeMap类 284

5.4.16 Properties类 285

5.4.17 Comparable接口 286

5.4.18 Comparator接口 288

5.4.19 Collections 290

5.5正则表达式 292

5.5.1正则表达式概述 292

5.5.2选择字符 293

5.5.3特殊模式 294

5.5.4转义字符 295

5.5.5重复次数 295

5.5.6子表达式 296

5.5.7指定字符串的开始和末尾 296

5.5.8分支 296

5.5.9常见用法举例 297

5.5.10 Pattern和Matcher 298

5.6枚举类型 299

5.6.1枚举类型的定义 299

5.6.2枚举类型的访问 299

5.6.3在switch中使用枚举类型 300

5.7 Annotation元注释 301

5.7.1定义Annotation元注释 301

5.7.2使用Annotation元注释 302

5.7.3解析Annotation注释 302

5.8使用ResourceBundle访问资源文件 304

5.8.1 properties文件的编写 304

5.8.2加载资源文件 304

5.8.3实例:从资源文件加载信息 305

第6章 高级应用 306

6.1多线程 306

6.1.1线程与进程 306

6.1.2 Java中多线程实现的方式 307

6.1.3线程的名字 309

6.1.4线程的优先级 311

6.1.5让线程等待 311

6.1.6实例:实现人能够同时说话和开车 315

6.1.7资源同步 316

6.1.8 wait和notify 319

6.2网络编程 321

6.2.1网络编程概述 322

6.2.2使用URLConnection访问Web应用 323

6.2.3实例:提取网页中感兴趣的内容 325

6.2.4 Socket通信 327

6.2.5实例:聊天室 330

6.2.6用户数据报通信 335

6.3 GUI 339

6.3.1 Swing快速上手 339

6.3.2容器类 343

6.3.3布局方式 352

6.3.4基本组件 356

6.3.5辅助类Color、Font 367

6.3.6事件处理 370

6.3.7菜单 375

6.3.8单选菜单项、复选菜单项和弹出式菜单 378

6.3.9树形结构的使用 382

6.3.10表格的使用 385

6.3.11实例:选择用户 387

6.3.12实例:模拟登录 388

6.3.13 JApplet 388

6.3.14图形 391

6.4综合实例 392

6.4.1实例:学生信息管理系统(GUI版本) 393

6.4.2实例:网络聊天程序(GUI版本) 393

6.4.3实例:简单画图工具 393