技术教育社区
www.teccses.org

Java面向对象程序设计:思想·方法·应用(微课视频版)

封面

作者:化志章 揭安全 石海鹤 王岚

页数:372

出版社:清华大学出版社

出版日期:2021

ISBN:9787302590668

电子书格式:pdf/epub/txt

内容简介

本书基于Java语言,以案例为核心,问题求解为主线,快速深入地介绍面向对象程序设计的基本思想、方法和应用,以及GUI编程、线程、IO流等不错应用框架。
全书包括三部分:部分Java入门,对应章和第2章,讨论Java概况、JDK配置,从C过渡到Java,并涉及一些面向对象的基本概念、理念和语法元素;第2部分面向对象程序设计,对应第3章,结合案例,系统阐述面向对象程序设计方法及其语法支撑机制,还包括异常处理、内部类等辅助机制;第3部分实用技术和框架,包括第4~10章,涉及图形用户编程、线程机制、IO流、网络通信、泛型和集合框架、Java连接数据库、反射机制与代理模式等内容。
本书在内容组织上,基于案例介绍内容,直观、高效;在内容设计上,所有案例均有目的、设计、源码和分析,便于快速深入地理解、领会;在内容表述上,结合丰富的图解和形象的比喻,破解技术难点。各章的章首配有导引,指明本章的设置目的、内容组织的逻辑主线、重点和难点等内容;章末配有小结,进行简单梳理、提炼;“思考与练习”中提供一组问答题,用于回顾和检测对前期内容的理解,并提供一些综合型编程作业。
本书适合作为高等院校计算机、软件工程专业和各种软件培训机构的教材,也特别适合广大程序员及其他Java开发爱好者自学、参考。

作者简介

化志章,副教授,对程序设计语言、方法和计算机发展史感兴趣,长期从事java及其它程序设计类课程的教学。对高校课堂教学普遍存在“内容多、学时少、学生理解浅”问题,历经十余年探索与实践,形成独特的解决方案,总结出高效课堂教学、训练专业思维、提高自学能力的新途径。本书是该方案的具体载体。

本书特色

内容组织上,基于案例介绍内容,直观、高效;内容设计上,所有案例均有目的、设计、源码、分析,便于快速深入地理解、领会;内容表述上,结合丰富的图解和形象的比喻,破解技术难点。各章的章首配有导引,指明本章的设置目的、内容组织的逻辑主线、重点难点等内容;章末配有小结,进行简单梳理、提炼;“思考与练习”中提供一组问答题,用于回顾和检测对前期内容的理解,并提供一些综合型编程作业。
本书基于Java语言,以案例为核心,问题求解为主线,快速深入地介绍面向对象程序设计的基本思想、方法和应用,以及GUI编程、线程、IO流等高级应用框架。

目录

第一部分Java入门
章Java及其开发环境3
1.0本章方法学导引3
1.1Java的产生与发展3
1.1.1嵌入式项目孕育Java4
1.1.2网络小程序让Java起飞4
1.1.3Java开发平台和相关术语5
1.2Java的特色5
1.2.1Java需要具备跨平台能力5
1.2.2Java需要支持面向对象7
1.2.3Java要追求高可靠性7
1.2.4Java需要更大的字符集10
1.3Java开发环境11
1.3.1JDK的下载和配置12
1.3.2Java开发工具简介13
1.3.3Java应用程序框架及其编译、运行14
本章小结15
思考与练习15
第2章从C过渡到Java16
2.0本章方法学导引16
2.1快速入门17
2.1.1Java类型概述17
2.1.2入门示例:求累加和18
2.1.3理解类和对象:汽车类的设计20
2.1.4顺序表及其应用23
2.1.5单链表及其应用28
2.2强化实践30
2.2.1二叉树及其应用30
最2.2.2树及其应用34
2.2.3班级信息管理系统1.0版39
2.2.4回顾与小结42
2.3从内存管理视角观察程序47
2.3.1Java虚拟机的内部体系结构47
2.3.2对象如何关联到方法48
2.3.3栈内存管理和堆内存管理48
2.3.4函数间的参数传递50
2.3.5再谈String和数组52
最2.4班级信息管理系统2.0版55
2.4.1输入输出的格式化55
2.4.2读文件和单项排序58
2.4.3对班级信息多种方式排序62
2.4.4对系统设计的反思63
2.5一些工具类的使用64
2.5.1计算程序运行时间64
2.5.2生成验证码、计算π66
2.5.3识别C标识符、手机号码、邮箱68
最2.6综合示例73
2.6.1示例:设计文本计算器73
2.6.2示例:游戏中玩家组队77
本章小结79
思考与练习80
第2部分面向对象程序设计
第3章面向对象程序设计基础85
3.0本章方法学导引85
3.1面向对象程序设计思想的引入86
3.1.1不得不提的结构化程序设计86
3.1.2这些问题很难用结构化方法处理88
3.1.3面向对象程序设计方法的诞生89
3.1.4面向对象程序设计方法简介90
最3.2基于对象视角开发图书借阅系统90
3.2.1需求描述90
3.2.2类的设计91
3.2.3系统数据组织92
3.2.4业务逻辑93
3.2.5系统实现94
3.2.6反思和拓展98
3.3语法认知-199
3.3.1示例:带约束的三角形99
3.3.2示例:狗嗅、狗咬人101
3.3.3示例:引用自己的成员为何出错105
3.3.4示例:构造直角三角106
3.3.5示例:禁止创建边值错误的三角形108
3.3.6示例:银行取款攻防110
3.3.7语法小结112
3.4基于抽象类和接口的编程113
3.4.1示例:设计形状智能识别器113
3.4.2抽象方法、抽象类和接口115
3.4.3示例:模拟主板集成各类板卡118
3.4.4示例:游戏兵种设计120
3.5设计模式124
3.5.1设计模式概述124
3.5.2策略模式:实现国际化电商计价125
3.5.3装饰模式:打印票据128
3.5.4适配器模式:拼接两个系统133
3.6OOP蕴含的思想137
3.6.1OOP视角137
3.6.2封装:让对象独立、简单和安全138
3.6.3继承:重用、分散复杂性、语义兼容139
3.6.4多态:对象的自适应能力140
3.6.5抽象:无处不在且又独具特色140
3.7语法认知-2141
3.7.1包和权限141
3.7.2不可或缺的异常机制146
3.7.3比构造函数更早执行的初始化块152
3.7.4再谈内部类153
本章小结154
思考与练习155
第3部分实用技术和框架
第4章图形用户界面编程159
4.0本章方法学导引159
4.1GUI编程概述160
4.1.1字符用户界面和图形用户界面160
4.1.2认识GUI的组件160
4.1.3界面的布局161
4.1.4示例:构造用户登录界面161
4.2事件处理163
4.2.1委托事件处理模型简介163
4.2.2登录界面1.0:单击按钮事件163
4.2.3登录界面2.0:加入键盘、窗体事件165
4.2.4登录界面3.0:更简洁的实现168
4.2.5综合示例:文本框式计算器1.0169
4.3拓展实践173
4.3.1设计能设定全局字体的工具类173
4.3.2按钮式计算器175
4.3.3文本框式计算器2.0178
最4.3.4生成配货地址181
4.3.5模拟浦丰投针试验189
4.3.6实现滚动字幕192
4.4关于事件和事件处理的讨论193
本章小结194
思考与练习195
第5章线程机制196
5.0本章方法学导引196
5.1线程机制概述197
5.1.1引入线程:实现并发程序设计197
5.1.2进程与线程:两种不同粒度的并发机制197
5.1.3线程概述198
5.2线程的构造和运行200
5.2.1继承Thread类构造线程200
5.2.2用Runnable构造线程203
5.2.3其他构造线程的方式204
5.3线程的互斥机制205
5.3.1概述205
5.3.2示例:模拟银行存取款206
5.3.3示例:模拟共享打印管理208
5.3.4示例:模拟网上抢票210
5.4线程的同步机制213
5.4.1同步的含义和实现框架213
5.4.2示例:模拟生产者—消费者问题214
5.4.3示例:模拟生产线217
最5.4.4示例:并发的归并排序220
最5.5关于并发设计、应用的进一步讨论225
5.5.1并发设计策略225
5.5.2主线程、子线程、守护线程226
5.5.3定时器226
5.5.4线程组与线程池227
本章小结227
思考与练习228
第6章IO流229
6.0本章方法学导引229
6.1IO流概述230
6.1.1IO流的引入230
6.1.2IO流的基本应用框架230
6.1.3IO流类库简介233
6.2目录文件操作236
6.2.1普通文件复制236
6.2.2目录复制237
6.2.3打印目录树239
6.2.4合并文件240
6.3其他操作242
6.3.1用数据流读、写文件242
6.3.2本文编码转换243
6.3.3序列化和反序列化245
最6.3.4多线程复制大型文件252
本章小结254
思考与练习255
第7章网络通信256
7.0本章方法学导引256
7.1网络编程基础257
7.1.1计算机网络与Java语言257
7.1.2网络通信概述258
7.2基于网址的网络编程259
7.2.1概述259
7.2.2提取网址和远程对象信息260
7.2.3示例:设计简单的文件下载器262
7.3基于Socket的点对点通信方式264
7.3.1概述264
7.3.2点对点通信模型264
7.3.3示例:二人间的一句话通信266
7.3.4示例:二人间随意聊天269
最7.3.5示例:群聊的设计272
7.4基于数据报的端对端通信方式279
7.4.1通信模型279
7.4.2示例:二人间的一句话通信280
本章小结283
思考与练习283
第8章泛型与集合框架285
8.0本章方法学导引285
8.1认识泛型286
8.1.1泛型引入背景286
8.1.2泛型的定义和使用286
8.2泛型机制应用288
8.2.1设计自动扩容的泛型顺序表288
8.2.2对泛型顺序表加约束290
8.2.3对泛型顺序表“模糊”读写291
8.2.4面向泛型顺序表的工具类294
最8.3泛型实现机理297
8.4泛型综合应用:集合框架299
8.4.1集合框架简介299
8.4.2List应用示例301
8.4.3Set应用示例303
8.4.4Map应用示例306
8.5示例:设计泛型树的迭代器307
本章小结312
思考与练习313
第9章Java连接数据库314
9.0本章方法学导引314
9.1JDBC简介315
9.2MySQL的安装、使用和配置316
9.2.1MySQL的下载和安装316
9.2.2MySQL数据库基本操作316
9.2.3在IDE中设置MySQL驱动路径318
9.3通过JDBC操纵MySQL318
9.3.1JDBC操纵数据库的基本框架319
9.3.2借助JDBC对数据库增、删、改、查321
本章小结324
思考与练习324
0章反射机制与代理模式325
10.0本章方法学导引325
10.1反射机制概述326
10.2反射的简单应用:简单工厂模式326
10.3反射机制的剖析和应用329
10.3.1剖析反射机制329
10.3.2示例:解析给定的Class型对象331
10.3.3示例:抽象工厂模式334
10.4代理模式338
10.4.1代理模式简介339
10.4.2静态代理模式339
10.4.3动态代理模式343
本章小结346
思考与练习346
附录A课外阅读——Eclipse集成开发环境347
附录B课外阅读——软件设计者的关注354

下载地址

立即下载

(解压密码:www.teccses.org)

Article Title:《Java面向对象程序设计:思想·方法·应用(微课视频版)》
Article link:https://www.teccses.org/1311460.html