• 新概念Java程序设计大学教程(第2版)
21年品牌 40万+商家 超1.5亿件商品

新概念Java程序设计大学教程(第2版)

全新正版 急速发货

34.4 7.0折 49 全新

库存6件

天津武清
认证卖家担保交易快速发货售后保障

作者张基温

出版社清华大学出版社

ISBN9787302400349

出版时间2016-09

装帧平装

开本16开

定价49元

货号24016032

上书时间2024-11-19

当科图书专营店

四年老店
已实名 已认证 进店 收藏店铺

   商品详情   

品相描述:全新
商品描述
前言
序言

导语摘要
本书结构新颖、概念清晰、面向应用,体现了作者提出的“程序设计=计算思维 语言艺术 工程方法”的教学思想。全书共分为4篇: 第1篇为面向对象启步,用4个例子引导读者逐步建立面向对象的思维方式和培养基本的设计能力,将Java基本语法贯穿其中;第2篇为面向抽象的结构优化,在介绍了抽象类和接口这两个基本机制后,用一个故事引入了面向对象程序设计原则,接着用设计模式举例加深对面向对象结构优化必要性的认识,为进一步学习设计模式打下基础,后介绍了反射技术;第3篇为基于API的开发,包括图形用户界面、网络编程、JDBC、JavaBean、程序文档化、程序配置和打包与发布;第4篇为Java高级技术,包括多线程技术、泛型编程和数据结构接口。通过这4篇可以达到夯实基础、面向应用、领略全貌的教学效果,并适应不同层次的教学需求。本书采用问题体系,具有零起点、快起动、立意新、重内涵的特点,可作为高等学校有关专业的程序设计课程的教材,也适合培训和自学。

作者简介
张基温,知名学者,计算机教育家。先后担任名古屋大学访问学者,山西财经大学、江南大学、华东政法大学、华南农业大学珠江学院、常熟理工学院、福建工程学院、广西职业技术学院、晋城学院等多所大学的专职、客座或兼职教授,北京大学博雅方略城市发展与信息化研究中心研究员,南京大学出版社总编顾问,太原高新技术区IT研究院实验室主任,山西省紧缺人才专家委员会副主任,中国信息经济学会常务理事,全国高等院校计算机基础教育研究会常务理事兼课程建设委员会副主任,中国计算机学会教育专业委员会委员,国家NIT考试委员会委员,江苏省计算机基础教学指导委员会委员,山西省新世纪专家学者协会副会长。为清华大学出版社、电子工业出版社、中国水利水电出版社、南京大学出版社、中国铁道出版社等主编了信息管理与信息系统专业、计算机实验与实践、大学生信息素养等多个系列教材。研究和教学领域涉及计算机科学与技术、信息管理、信息经济学、电子政务与电子商务、服务科学,发表论文一百余篇,已出版著作90余种。在程序设计教学领域,从20世纪80年代初就尝试将软件工程方法和算法思想引入程序设计课程,20世纪90年代开始倡导“从语法体系向问题体系转变”、“程序设计与程序测试同步进行”、“重在逻辑思维和方法训练、语法够用就行”,并认为“不了解设计模式,就不会真正理解面向对象。” 

目录

第1篇面向对象程序设计启步第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对象成员的访问与this11

1.2.4主方法与主类12

1.2.5类文件与包14

1.3Java程序开发16

1.3.1Java编译器与Java虚拟机16

1.3.2JDK16

1.3.3Eclipse开发环境18

1.4知识链接24

1.4.1Java语言及其特点24

1.4.2Java数据类型26

1.4.3字面值27

1.4.4基本类型的转换29

1.4.5Java关键词与标识符32

1.4.6流与标准I/O流对象33

1.4.7Java注释34

习题135第2单元计算器类38

2.1计算器类的定义38

2.1.1计算器建模38

2.1.2Calculator类的Java描述39

2.2Calculator类的测试39

2.2.1测试数据设计39

2.2.2规避整除风险——Calculator类改进之一40

2.3异常处理——Calculator类改进之二42

2.3.1Java异常处理概述42

2.3.2Java异常处理的基本形式42

2.3.3用throws向上层抛出异常44

2.3.4用throw直接抛出异常45

2.3.5Java提供的主要异常类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.1Java表达式54

2.6.2静态方法——类方法55

2.6.3初始化块与静态初始化块57

2.6.4String类60

2.6.5正则表达式61

2.6.6Scanner类63

习题264第3单元素数序列产生器72

3.1问题描述与对象建模72

3.1.1素数序列产生器建模72

3.1.2getPrimeSequence()方法的基本思路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.3Java数据实体的生命期80

3.3.4基本类型的包装81

习题383第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基本的发牌算法99

4.4.2用二维数组表示玩家手中的牌100

4.4.3使用二维数组的发牌方法102

4.4.4含有洗牌、发牌方法的扑克游戏类设计102

4.5知识链接104

4.5.1数组实用类Arrays104

4.5.2java.util.Vector类105

4.5.3命令行参数107

4.5.4Math类108

习题4109第2篇面向抽象的结构优化第5单元学生研究生115

5.1学生类研究生类层次结构115

5.1.1由Student类派生GradStudent类115

5.1.2super关键字 117

5.1.3final关键字119

5.2Java的访问权限控制119

5.2.1类成员的访问权限控制119

5.2.2类的访问权限控制120

5.2.3private构造器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.4JVM的绑定机制127

5.5知识链接128

5.5.1Object类128

5.5.2@Deprecated与@SuppressWarnings131

5.5.3Java异常类和错误类体系135

习题5137第6单元抽象类与接口145

6.1圆、三角形和矩形145

6.1.13个独立的类: Circle、Rectangle和Triangle145

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.1Java构件修饰符小结157

6.4.2对象克隆158

习题6160第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

习题7183

第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.2Class对象210

8.5.3反射API213

8.5.4使用反射的工厂模式215

8.5.5使用反射 配置文件的工厂模式216

习题8218第3篇基于API的应用开发第9单元图形用户界面开发223

9.1图形用户界面概述223

9.1.1组件与容器223

9.1.2布局管理器与坐标系225

9.1.3事件与事件监听器227

9.1.4AWT、Swing、SWT和JFace228

9.1.5Swing程序设计的一般流程229

9.2Swing组件229

9.2.1Swing工具包229

9.2.2Swing组件体系与分类230

9.2.3Swing容器232

9.2.4Swing布局管理器235

9.3事件处理239

9.3.1事件及其分类239

9.3.2事件监听接口240

9.3.3事件监听适配器243

9.4嵌套类及其在事件处理中的应用246

9.4.1嵌套类及其分类246

9.4.2实名内部类246

9.4.3匿名内部类248

习题9250第10单元Java 网络程序设计251

10.1IP地址与InetAddress类251

10.1.1IP协议与IP地址251

10.1.2InetAddress类251

10.2Java Socket概述253

10.2.1Socket的概念253

10.2.2客户端/服务器工作模式253

10.3面向TCP的Java Socket程序设计254

10.3.1Socket类和ServerSocket类254

10.3.2TCP Socket通信过程255

10.3.3TCP Socket程序设计257

10.4面向UDP的Java程序设计260

10.4.1DatagramPacket类261

10.4.2DatagramSocket类261

10.4.3UDP Socket程序设计263

10.5网络资源访问266

10.5.1URI、URL和URN266

10.5.2URL类267

10.5.3URLConnection类268

10.6知识链接268

10.6.1字节流与字符流268

10.6.2缓冲流与转换流273

10.6.3PrintWriter类275

习题10276第11单元JDBC278

11.1JDBC概述278

11.1.1JDBC的组成与工作过程278

11.1.2JDBC API及其对JDBC过程的支持278

11.2加载JDBC驱动280

11.2.1JDBC数据库驱动程序的类型280

11.2.2JDBC驱动类名与JDBC驱动下载282

11.2.3DriverManager类282

11.2.4注册Driver284

11.3连接数据源286

11.3.1数据源描述规则——JDBC URL286

11.3.2获取Connection对象287

11.3.3连接过程中的异常处理290

11.3.4Connection接口的常用方法290

11.4创建SQL工作空间进行数据库操作291

11.4.1SQL291

11.4.2创建SQL工作空间293

11.4.3用Statement实例封装SQL语句293

11.5处理结果集295

11.5.1结果集游标管理295

11.5.2getXxx()方法295

11.5.3updateXxx()方法296

11.5.4关闭数据库连接296

11.5.5JDBC数据库查询实例296

11.6PreparedStatement接口299

11.6.1用PreparedStatement实例封装SQL语句的特点299

11.6.2PreparedStatement接口的主要方法299

11.6.3PreparedStatement对象操作SQL语句的步骤300

11.6.4Java日期数据303

11.7事务处理304

11.7.1事务的概念304

11.7.2Connection类中有关事务处理的方法304

11.7.3JDBC事务处理程序的基本结构305

11.8DAO模式307

11.8.1DAO概述307

11.8.2DAO模式的基本结构309

11.8.3DAO程序举例312

习题11318第12单元JavaBean320

12.1JavaBean概述320

12.1.1软件组件与JavaBean320

12.1.2JavaBean结构321

12.1.3JavaBean规范323

12.2开发JavaBean323

12.2.1JavaBean API323

12.2.2JavaBean开发工具324

习题12326第13单元程序文档化、程序配置与程序发布328

13.1Javadoc328

13.1.1Javadoc及其结构328

13.1.2Javadoc标签328

13.1.3Javadoc应用规范330

13.1.4Javadoc命令332

13.2自定义Annotation333

13.2.1Annotation的基本定义格式333

13.2.2向Annotation注入数据334

13.2.3通过反射提取Annotation中的数据335

13.2.4用Annotation 反射设计DAO基类336

13.3Java程序配置342

13.3.1程序配置与程序配置文件342

13.3.2.properties文件343

13.3.3XML配置文件345

13.3.4基于InputStream输入流的配置文件的读取346

13.3.5基于资源绑定的配置文件读取353

13.4Java程序的打包与发布354

13.4.1Java程序的打包与JAR文件包354

13.4.2manifest文件354

13.4.3JAR命令357

13.4.4在Eclipse环境中创建可执行JAR包359

13.4.5在MyEclipse环境中创建可执行JAR包361

习题13361

第4篇Java高级技术第14单元Java泛型编程365

14.1泛型基础365

14.1.1问题的提出365

14.1.2泛型方法367

14.1.3多泛型类368

14.2泛型语法扩展369

14.2.1泛型通配符369

14.2.2泛型设限370

14.2.3泛型嵌套370

14.3实例——利用泛型和反射机制抽象DAO371

习题14373第15单元Java多线程375

15.1Java多线程概述375

15.1.1

   相关推荐   

—  没有更多了  —

以下为对购买帮助不大的评价

此功能需要访问孔网APP才能使用
暂时不用
打开孔网APP