高等教育质量工程信息技术系列示范教材 新概念Java程序设计大学教程 第3版PDF电子书下载
- 电子书积分:13 积分如何计算积分?
- 作 者:张基温编著
- 出 版 社:北京:清华大学出版社
- 出版年份:2018
- ISBN:9787302490579
- 页数:392 页
第1篇 面向对象程序设计启步 3
第1单元 职员类 3
1.1从现实世界中的对象到类模型 3
1.1.1程序=模型+表现 3
1.1.2现实世界中的对象分析 4
1.1.3职员类的UML描述 5
1.1.4职员类的Java语言描述 5
1.1.5职员类的Java代码说明 6
1.2类的应用与测试 8
1.2.1对象引用及其创建 8
1.2.2构造器与this() 9
1.2.3对象成员的访问与this 11
1.2.4主方法与主类 12
1.2.5类文件与包 14
1.3 Java程序开发 16
1.3.1 Java编译器与Java虚拟机 16
1.3.2 JDK 16
1.3.3 Eclipse开发环境 18
1.4知识链接 24
1.4.1 Java语言及其特点 24
1.4.2 Java数据类型 26
1.4.3字面值 27
1.4.4基本类型的转换 29
1.4.5 Java关键词与标识符 32
1.4.6流与标准I/O流对象 33
1.4.7 Java注释 34
习题1 35
第2单元 计算器类 38
2.1计算器类的定义 38
2.1.1计算器建模 38
2.1.2 Calculator类的Java描述 39
2.2 Calculator类的测试 39
2.2.1测试数据设计 39
2.2.2规避整除风险——Calculator类改进之一 40
2.3异常处理——Calculator类改进之二 42
2.3.1 Java异常处理概述 42
2.3.2 Java异常处理的基本形式 42
2.3.3用throws向上层抛出异常 44
2.3.4用throw直接抛出异常 45
2.3.5 Java提供的主要异常类 47
2.4用选择结构确定计算类型——Calculator类改进之三 47
2.4.1用if…else实现calculate()方法 47
2.4.2关系操作符 49
2.4.3用switch结构实现calculate()方法 50
2.5用静态成员变量存储中间结果——Calculator类改进之四 52
2.5.1静态成员变量的性质 52
2.5.2带有静态成员变量的Calculator类定义 52
2.6知识链接 54
2.6.1 Java表达式 54
2.6.2静态方法——类方法 55
2.6.3初始化块与静态初始化块 57
2.6.4 String类 60
2.6.5正则表达式 61
2.6.6 Scanner类 64
习题2 64
第3单元 素数序列产生器 72
3.1问题描述与对象建模 72
3.1.1素数序列产生器建模 72
3.1.2 getPrimeSequence()方法的基本思路 72
3.2使用isPrime()判定素数的PrimeGenerator类的实现 73
3.2.1采用while结构的getPrimeSequence()方法 73
3.2.2采用do…while结构的getPrimeSequence()方法 75
3.2.3采用for结构的getPrimeSequence()方法 75
3.2.4重复结构中的continue语句 76
3.2.5采用for结构的isPrime()方法 76
3.2.6将isPrime()定义为静态方法 77
3.2.7不用isPrime()判定素数的PrimeGenerator类的实现 78
3.3知识链接 79
3.3.1变量的访问属性 79
3.3.2变量的作用域 79
3.3.3 Java数据实体的生命期 80
3.3.4基本类型的包装 81
习题3 83
第4单元 扑克游戏 90
4.1数组与扑克牌的表示和存储 90
4.1.1数组的概念 90
4.1.2数组的声明与内存分配 90
4.1.3数组的初始化 92
4.1.4匿名数组 93
4.2数组元素的访问 93
4.2.1用普通循环结构访问数组元素 94
4.2.2用增强for遍历数组元素 94
4.3洗牌 95
4.3.1随机数与Random类 95
4.3.2洗牌方法设计 96
4.3.3含有洗牌方法的扑克游戏类设计 98
4.4扑克的发牌与二维数组 99
4.4.1基本的发牌算法 100
4.4.2用二维数组表示玩家手中的牌 100
4.4.3使用二维数组的发牌方法 102
4.4.4含有洗牌、发牌方法的扑克游戏类设计 102
4.5知识链接 104
4.5.1数组实用类Arrays 104
4.5.2 java.util.Vector类 105
4.5.3命令行参数 107
4.5.4 Math类 108
习题4 109
第2篇 面向类的程序设计 115
第5单元 类的继承 115
5.1学生类-研究生类层次结构 115
5.1.1由Student类派生GradStudent类 115
5.1.2 super关键字 117
5.1.3 final关键字 119
5.2 Java的访问权限控制 119
5.2.1类成员的访问权限控制 119
5.2.2类的访问权限控制 120
5.2.3 private构造器 120
5.3类层次中的类型转换 121
5.3.1类层次中的赋值兼容规则 121
5.3.2里氏代换原则 122
5.3.3类型转换与类型测试 122
5.4方法覆盖与隐藏 123
5.4.1派生类实例方法覆盖基类中签名相同的实例方法 123
5.4.2用@Override标注覆盖 124
5.4.3派生类静态方法隐藏基类中签名相同的静态方法 126
5.4.4 JVM的绑定机制 127
5.5知识链接 128
5.5.1 Object类 128
5.5.2@Deprecated与@SuppressWarnings 131
5.5.3 Java异常类和错误类体系 135
习题5 137
第6单元 抽象类与接口 145
6.1圆、三角形和矩形 145
6.1.1 3个独立的类:Circle、Rectangle和Triangle 145
6.1.2枚举 147
6.2抽象类 148
6.2.1由具体类抽象出抽象类 148
6.2.2由抽象类派生出实例类 150
6.2.3抽象类小结 153
6.3接口 153
6.3.1接口及其特点 153
6.3.2接口的实现类 154
6.3.3关于接口的进一步讨论 156
6.4知识链接 157
6.4.1 Java构件修饰符小结 157
6.4.2对象克隆 158
习题6 160
第7单元 面向对象程序架构优化原则 164
7.0引言 164
7.1从可重用说起:合成/聚合优先原则 165
7.1.1继承重用的特点 166
7.1.2合成/聚合重用及其特点 166
7.1.3合成/聚合优先原则 167
7.2从可维护性说起:开-闭原则 168
7.2.1软件的可维护性和可扩展性 168
7.2.2开-闭原则 169
7.3面向抽象的原则 170
7.3.1具体与抽象 170
7.3.2依赖倒转原则 170
7.3.3面向接口原则 170
7.3.4面向接口编程举例 171
7.4单一职责原则 175
7.4.1对象的职责 175
7.4.2单一职责原则的概念 176
7.4.3接口分离原则 176
7.5不要和陌生人说话 181
7.5.1狭义迪米特法则 181
7.5.2广义迪米特法则 182
习题7 183
第8单元 设计模式 186
8.1设计模式概述 186
8.2设计模式举例——诉讼代理问题 186
8.2.1无律师的涉讼程序设计 186
8.2.2请律师代理的涉讼程序设计 187
8.2.3关于代理模式 189
8.3设计模式举例——商场营销问题 190
8.3.1不用策略模式的商场营销解决方案 190
8.3.2策略模式的定义 192
8.3.3采用策略模式的商场营销解决方案 193
8.4设计模式举例——图形对象的创建问题 197
8.4.1简单工厂模式 197
8.4.2工厂方法模式 202
8.4.3策略模式与简单工厂模式结合 207
8.5知识链接 209
8.5.1类文件与类加载 209
8.5.2 Class对象 209
8.5.3反射API 213
8.5.4使用反射的工厂模式 215
8.5.5使用反射+配置文件的工厂模式 216
习题8 218
第3篇 基于API的应用开发 223
第9单元 Java网络程序设计 223
9.1 IP地址与InetAddress类 223
9.1.1 IP协议与IP地址 223
9.1.2 InetAddress类 223
9.2 Java Socket概述 225
9.2.1 Socket的概念 225
9.2.2客户端/服务器工作模式 225
9.3面向TCP的Java Socket程序设计 226
9.3.1 Socket类和ServerSocket类 226
9.3.2 TCP Socket通信过程 227
9.3.3 TCP Socket程序设计 229
9.4面向UDP的Java程序设计 232
9.4.1 DatagramPacket类 233
9.4.2 DatagramSocket类 233
9.4.3 UDP Socket程序设计 235
9.5网络资源访问 238
9.5.1 URI、URL和URN 238
9.5.2 URL类 239
9.5.3 URLConnection类 240
9.6知识链接 240
9.6.1字节流与字符流 240
9.6.2缓冲流与转换流 245
9.6.3 PrintWriter类 247
习题9 248
第10单元 JDBC 250
10.1 JDBC概述 250
10.1.1 JDBC的组成与工作过程 250
10.1.2 JDBC API及其对JDBC过程的支持 250
10.2加载JDBC驱动 252
10.2.1 JDBC数据库驱动程序的类型 252
10.2.2 JDBC驱动类名与 JDBC驱动程序的下载 254
10.2.3 DriverManager类 254
10.2.4注册Driver 256
10.3连接数据源 258
10.3.1数据源描述规则——JDBC URL 258
10.3.2获取Connection对象 259
10.3.3连接过程中的异常处理 262
10.3.4 Connection接口的常用方法 262
10.4创建SQL工作空间进行数据库操作 263
10.4.1 SQL 263
10.4.2创建SQL工作空间 265
10.4.3用Statement实例封装SQL语句 265
10.5处理结果集 267
10.5.1结果集游标的管理 267
10.5.2 getXxx()方法 267
10.5.3 updateXxx()方法 268
10.5.4关闭数据库连接 268
10.5.5 JDBC数据库查询实例 268
10.6 PreparedStatement接口 271
10.6.1用PreparedStatement实例封装SQL语句的特点 271
10.6.2 PreparedStatement接口的主要方法 271
10.6.3 PreparedStatement对象操作SQL语句的步骤 272
10.6.4 Java日期数据 275
10.7事务处理 276
10.7.1事务的概念 276
10.7.2 Connection类中有关事务处理的方法 276
10.7.3 JDBC事务处理程序的基本结构 277
10.8 DAO模式 279
10.8.1 DAO概述 279
10.8.2 DAO模式的基本结构 281
10.8.3 DAO程序举例 284
习题10 290
第11单元 JavaBean 292
11.1 JavaBean概述 292
11.1.1软件组件与JavaBean 292
11.1.2 JavaBean结构 293
11.1.3 JavaBean规范 295
11.2开发JavaBean 295
11.2.1 JavaBean API 295
11.2.2 JavaBean开发工具 296
习题11 298
第12单元 程序文档化、程序配置与程序发布 300
12.1 Javadoc 300
12.1.1 Javadoc及其结构 300
12.1.2 Javadoc标签 300
12.1.3 Javadoc应用规范 302
12.1.4 Javadoc命令 304
12.2自定义Annotation 305
12.2.1 Annotation的基本定义格式 305
12.2.2向Annotation注入数据 306
12.2.3通过反射提取Annotation中的数据 307
12.2.4用Annotation+反射设计DAO基类 308
12.3 Java程序配置 314
12.3.1程序配置与程序配置文件 314
12.3.2.properties文件 315
12.3.3 XML配置文件 317
12.3.4基于InputStream输入流的配置文件的读取 318
12.3.5基于资源绑定的配置文件的读取 325
12.4 Java程序的打包与发布 326
12.4.1 Java程序的打包与JAR文件包 326
12.4.2 manifest文件 326
12.4.3 JAR命令 329
12.4.4在Eclipse环境中创建可执行JAR包 331
12.4.5在MyEclipse环境中创建可执行JAR包 333
习题12 333
第4篇 Java高级技术 337
第13单元 Java泛型编程 337
13.1泛型基础 337
13.1.1问题的提出 337
13.1.2泛型方法 339
13.1.3多泛型类 340
13.2泛型语法扩展 341
13.2.1泛型通配符 341
13.2.2泛型设限 342
13.2.3泛型嵌套 342
13.3实例——利用泛型和反射机制抽象DAO 343
习题13 345
第14单元 Java多线程 347
14.1 Java多线程概述 347
14.1.1进程与线程 347
14.1.2 Java线程的生命周期 348
14.1.3 Java多线程程序实例:室友叫醒 352
14.1.4线程调度与线程优先级 356
14.1.5知识链接:JVM运行时数据区 356
14.2 java.lang.Thread类 358
14.2.1 Thread类的构造器 358
14.2.2 Thread类中的优先级别静态常量 359
14.2.3 Thread类中影响线程状态的方法 359
14.2.4 Thread类中的一般方法 360
14.2.5 Thread类从Object继承的方法 360
14.3多线程管理 360
14.3.1多线程同步共享资源 360
14.3.2线程死锁问题 362
14.3.3线程组 362
习题14 363
第15单元 Java数据结构和接口 369
15.1数据的逻辑结构与物理结构 369
15.1.1数据的逻辑结构 369
15.1.2数据的物理结构 370
15.1.3 Java数据结构API 372
15.2接口及其应用 373
15.2.1 Collection接口及其方法 373
15.2.2 List接口及其实现 374
15.2.3 Set接口及其实现 376
15.3聚集的标准输出 378
15.3.1 Iterator接口 378
15.3.2 foreach 379
15.4 Map接口类及其应用 380
15.4.1 Map接口的定义与方法 380
15.4.2 Map.Entry接口 380
15.4.3 HashMap类和TreeMap类 381
习题15 383
附录A 符号 385
A.1 Java主要操作符的优先级和结合性 385
A.2 Javadoc标签 385
附录B Java运行时异常类和错误类 387
B.1 Runti meException类 387
B.2 Error类 388
附录C Java常用的工具包 390
参考文献 391
- 《指向核心素养 北京十一学校名师教学设计 英语 七年级 上 配人教版》周志英总主编 2019
- 《设计十六日 国内外美术院校报考攻略》沈海泯著 2018
- 《计算机辅助平面设计》吴轶博主编 2019
- 《高校转型发展系列教材 素描基础与设计》施猛责任编辑;(中国)魏伏一,徐红 2019
- 《全国校外艺术课堂新形态示范教材系列 少儿钢琴表演曲集》唐冠祥编著 2019
- 《景观艺术设计》林春水,马俊 2019
- 《程序逻辑及C语言编程》卢卫中,杨丽芳主编 2019
- 《高等教育双机械基础课程系列教材 高等学校教材 机械设计课程设计手册 第5版》吴宗泽,罗圣国,高志,李威 2018
- 《指向核心素养 北京十一学校名师教学设计 英语 九年级 上 配人教版》周志英总主编 2019
- 《Cinema 4D电商美工与视觉设计案例教程》樊斌 2019
- 《市政工程基础》杨岚编著 2009
- 《家畜百宝 猪、牛、羊、鸡的综合利用》山西省商业厅组织技术处编著 1959
- 《《道德经》200句》崇贤书院编著 2018
- 《高级英语阅读与听说教程》刘秀梅编著 2019
- 《计算机网络与通信基础》谢雨飞,田启川编著 2019
- 《看图自学吉他弹唱教程》陈飞编著 2019
- 《法语词汇认知联想记忆法》刘莲编著 2020
- 《培智学校义务教育实验教科书教师教学用书 生活适应 二年级 上》人民教育出版社,课程教材研究所,特殊教育课程教材研究中心编著 2019
- 《国家社科基金项目申报规范 技巧与案例 第3版 2020》文传浩,夏宇编著 2019
- 《流体力学》张扬军,彭杰,诸葛伟林编著 2019
- 《大学计算机实验指导及习题解答》曹成志,宋长龙 2019
- 《指向核心素养 北京十一学校名师教学设计 英语 七年级 上 配人教版》周志英总主编 2019
- 《大学生心理健康与人生发展》王琳责任编辑;(中国)肖宇 2019
- 《大学英语四级考试全真试题 标准模拟 四级》汪开虎主编 2012
- 《大学英语教学的跨文化交际视角研究与创新发展》许丽云,刘枫,尚利明著 2020
- 《北京生态环境保护》《北京环境保护丛书》编委会编著 2018
- 《复旦大学新闻学院教授学术丛书 新闻实务随想录》刘海贵 2019
- 《大学英语综合教程 1》王佃春,骆敏主编 2015
- 《大学物理简明教程 下 第2版》施卫主编 2020
- 《指向核心素养 北京十一学校名师教学设计 英语 九年级 上 配人教版》周志英总主编 2019