新書推薦:
《
关键改变:如何实现自我蜕变
》
售價:HK$
77.3
《
超加工人群:为什么有些食物让人一吃就停不下来
》
售價:HK$
99.7
《
历史的教训(浓缩《文明的故事》精华,总结历史教训的独特见解)
》
售價:HK$
62.7
《
不在场证明谜案(超绝CP陷入冤案!日本文坛超新星推理作家——辻堂梦代表作首次引进!)
》
售價:HK$
58.2
《
明式家具三十年经眼录
》
售價:HK$
524.2
《
敦煌写本文献学(增订本)
》
售價:HK$
221.8
《
耕读史
》
售價:HK$
109.8
《
地理计算与R语言
》
售價:HK$
121.0
|
編輯推薦: |
《Java面向对象程序设计》贴近实战,在介绍了多线程和网络编程后,分别通过基于TCP和UDP技术设计了一个图形界面的双人聊天程序,该程序稍加改动即可实现多人在线聊天。在介绍了泛型类、泛型接口和泛型方法的定义和使用方法后,通过一个单链表的例子,演示了用泛型来实现单链表的技术,这个例子稍加改动即可实现双向链表,同时,将来在学习数据结构的过程中此例将非常容易实现各种算法。
|
內容簡介: |
Java是一种面向对象的程序设计语言,具有平台无关、安全、多线程、分布式网络编程的特点,是目前*流行的程序设计语言之一。《Java面向对象程序设计》通过对面向对象知识及案例的介绍,能够让读者从面向过程的思路转向面向对象的思路。全书分为13章,前6章主要介绍Java的特点及开发环境的安装和配置,Java的基本语法,面向对象的设计思路和类、对象、继承、接口、多态等的用法,以及异常处理。从第7章开始分别以专题的方式介绍常用类库、流与文件操作、泛型、图形界面、多线程、网络编程、JDBC数据库编程等知识。对泛型和网络编程部分的讲解细致、图文结合,借助案例介绍使读者能够实现学以致用的目的。各章内容设有本章要点学习目标案例实训等模块,内容讲解过程穿插小实例,结构清晰、易学易懂。 《Java面向对象程序设计》内容丰富,案例贴合实际,适合作为普通本科院校及高职高专院校计算机相关专业学生的Java和面向对象程序设计的学习教材,也可以作为Java学习人员的初级、中级教程。
|
目錄:
|
目 录
第1章 Java概述 1
1.1 编程语言简介 2
1.2 Java简介 2
1.3 搭建Java开发环境 3
1.3.1 下载JDK 3
1.3.2 安装JDK 4
1.3.3 配置环境变量 5
1.3.4 测试 7
1.4 第一个Java程序 7
1.5 Java程序的运行 8
1.6 本章小结 10
1.7 习题 10
第2章 Java语言基础 11
2.1 标识符 12
2.1.1 标识符概述 12
2.1.2 关键字 12
2.1.3 分隔符 13
2.1.4 注释 14
2.2 数据类型 14
2.2.1 整数类型 14
2.2.2 浮点数据类型 16
2.2.3 布尔数据类型 17
2.2.4 字符型 17
2.2.5 转义字符 17
2.2.6 各类型数据间的相互转换 18
2.3 运算符 19
2.3.1 赋值运算符 19
2.3.2 算术运算符 20
2.3.3 关系运算符 21
2.3.4 逻辑运算符 22
2.3.5 条件运算符 23
2.3.6 位运算符 23
2.3.7 运算符的优先级 25
2.4 Java程序的流程控制语句 26
2.4.1 顺序语句 26
2.4.2 条件语句 26
2.4.3 循环语句 29
2.4.4 跳转语句 32
2.5 数组 33
2.5.1 一维数组 33
2.5.2 多维数组 37
2.6 Java标准输入输出 38
2.6.1 标准输出流System.out和标准
输入流System.in 38
2.6.2 Scanner 39
2.7 本章小结 40
2.8 习题 40
第3章 面向对象编程 41
3.1 面向对象概述 42
3.2 面向对象程序设计的基本特征 42
3.3 Java类与对象 43
3.3.1 Java类的定义 43
3.3.2 构造方法 46
3.3.3 Java对象的创建和构造方法 46
3.4 包 47
3.4.1 包的定义 48
3.4.2 带包类的编译和运行 49
3.5 方法的参数传递 50
3.6 案例实训:模拟银行存取款程序 52
3.7 本章小结 54
3.8 习题 55
第4章 继承 57
4.1 继承的概念 58
4.2 Java中的继承 58
4.3 this与super 60
4.3.1 this的用法 60
4.3.2 super的用法 62
4.4 继承时的覆盖与隐藏 63
4.5 访问控制符 65
4.5.1 定义类的访问权限 66
4.5.2 类的成员访问权限 66
4.6 类变量、实例变量与局部变量 69
4.6.1 成员变量 69
4.6.2 局部变量 70
4.7 实例方法与类方法 71
4.8 static代码块 72
4.9 final修饰符 72
4.9.1 final修饰类变量 73
4.9.2 final修饰实例变量 73
4.9.3 final修饰局部变量 74
4.9.4 final修饰成员方法 74
4.9.5 final修饰类 74
4.10 对象的初始化顺序 75
4.11 案例实训:银行账户功能扩展 79
4.12 本章小结 81
4.13 习题 82
第5章 抽象类和接口 83
5.1 抽象类 84
5.1.1 抽象类的定义 84
5.1.2 向上转型 86
5.2 接口 88
5.2.1 接口的定义 88
5.2.2 接口的实现 89
5.2.3 接口和抽象类的区别 90
5.3 多态 91
5.4 内部类 92
5.4.1 实例成员内部类 93
5.4.2 静态内部类 94
5.4.3 局部内部类 95
5.4.4 匿名内部类 96
5.5 面向接口编程 97
5.6 案例实训:模拟读写数据 97
5.7 本章小结 100
5.8 习题 100
第6章 异常处理 101
6.1 异常概述 102
6.1.1 什么是异常 102
6.1.2 Java常用异常 102
6.2 Java的异常处理机制 104
6.2.1 try-catch-finally语句 105
6.2.2 异常的抛出及声明 106
6.3 自定义异常 108
6.4 断言 110
6.5 本章小结 111
6.6 习题 112
第7章 常用类库 113
7.1 字符串String 114
7.2 StringBuffer类 118
7.3 StringTokenizer类 119
7.4 日期类 120
7.5 包装类 123
7.6 集合类 126
7.6.1 集合简介 126
7.6.2 Collection接口 127
7.6.3 Set接口 128
7.6.4 List接口 129
7.6.5 Iterator接口 131
7.6.6 ListIterator接口 132
7.6.7 集合遍历的方法 132
7.6.8 Map集合 133
7.6.9 Comparable和Comparator
接口 136
7.7 本章小结 138
7.8 习题 138
第8章 流与文件操作 139
8.1 标准文件类File 140
8.1.1 File类的构造方法 140
8.1.2 File类的常用成员方法 141
8.2 输入、输出流 142
8.2.1 流的基本概念 142
8.2.2 字节流 143
8.2.3 字符流 153
8.2.4 转换流InputStreamReader和
OutputStreamWriter 157
8.3 随机访问类RandomAccessFile 160
8.4 本章小结 161
8.5 习题 162
第9章 泛型 163
9.1 为什么需要泛型 164
9.2 泛型类 165
9.3 泛型数组 168
9.4 泛型成员的使用 169
9.5 限制泛型类的上界 169
9.6 泛型类的继承 173
9.7 泛型接口 174
9.8 泛型方法 175
9.9 泛型通配符 178
9.10 类型擦除 182
9.11 案例实训:单链表 184
9.12 本章小结 188
9.13 习题 188
第10章 图形界面 189
10.1 引言 190
10.2 AWT和Swing 190
10.3 JFrame 192
10.4 JPanel和常用组件 193
10.4.1 JPanel 193
10.4.2 JLabel 194
10.4.3 JTextField 194
10.4.4 JButton 195
10.4.5 JPassword 195
10.4.6 JTextArea 196
10.4.7 JRadioButton和
ButtonGroup 197
10.4.8 JCheckBox 198
10.4.9 JComboBox 198
10.4.10 JScrollPane 199
10.4.11 Color 200
10.4.12 Font 201
10.5 布局管理器 201
10.5.1 FlowLayout流式布局 201
10.5.2 BorderLayout边框式布局 203
10.5.3 GridLayout网格式布局 204
10.5.4 CardLayout卡片式布局 206
10.5.5 空布局 208
10.6 事件处理 210
10.6.1 Java的事件处理机制 210
10.6.2 事件处理程序的编写 211
10.6.3 常用事件 216
10.6.4 监听器接口适配器类 224
10.7 对话框 225
10.8 菜单 228
10.9 案例实训:日记本 230
10.10 本章小结 236
10.11 习题 237
第11章 多线程 239
11.1 线程的概念 240
11.2 线程的创建 240
11.2.1 通过继承Thread类来建立
线程类 240
11.2.2 通过实现Runnable接口的
方法来实现线程 243
11.2.3 Thread类的用法 244
11.3 线程的生命周期 245
11.4 线程的调度与控制 246
11.4.1 线程的优先级 246
11.4.2 线程的控制方法 248
11.5 线程同步 252
11.5.1 线程加锁 253
11.5.2 死锁 255
11.5.3 线程同步 256
11.6 案例实训:摇号程序 260
11.7 本章小结 262
11.8 习题 262
第12章 网络编程 263
12.1 http的基本概念 264
12.2 URL和URLConnection类 264
12.2.1 URL类 264
12.2.2 URLConnection类 267
12.2.3 InetAddress类 268
12.3 TCP Socket 270
12.3.1 Socket类 271
12.3.2 ServerSocket类 273
12.4 数据报 284
12.4.1 DatagramPacket和
DatagramSocket类 284
12.4.2 图形界面聊天案例 288
12.5 本章小结 291
12.6 习题 291
第13章 JDBC 293
13.1 JDBC简介 294
13.1.1 JDBC的概念 294
13.1.2 JDBC 3.0 API简介 295
13.1.3 JDBC驱动程序类型 297
13.2 使用JDBC 299
13.2.1 准备工作 299
13.2.2 使用JDBC的一般步骤 300
13.3 JDBC进阶 304
13.3.1 数据库帮助类
DBConnection 304
13.3.2 使用PreparedStatement 306
13.3.3 调用存储过程 307
13.4 JDBC事务 309
13.4.1 事务的概念 309
13.4.2 JDBC事务管理 309
13.5 JDBC 4.x 312
13.6 案例实训:基于Eclipse项目实现
增删改查 313
13.7 本章小结 317
13.8 习题 317
参考文献 318
|
內容試閱:
|
前 言
Java作为一种面向对象的编程语言,在基本类型变量定义、表达式、语句定义方面与其他高级编程语言差别不大,其核心是对面向对象的支持。能够让读者从思想上真正理解并掌握面向对象的思路,用面向对象的思路解决问题是本书重点介绍的内容。本书第3~5章介绍面向对象的技术。通过一个计算圆的面积的例子,分别演示了用面向过程和面向对象的思路来设计程序,让读者体会面向对象的思路特点,然后通过银行存取款业务来加深对面向对象的理解。同时,在介绍抽象类和接口时使用同一个例子,能够让读者体会到抽象类和接口的区别,并详细介绍了什么情况下应该使用抽象类、什么情况下应该使用接口,让读者理解面向接口编程的优点。
贴近实战是本书的一大特点。在介绍了文件操作和图形界面技术后,通过一个记事本的例子将文件操作和图形界面结合起来,同时引入了日期计算功能,这个例子可以在现实中用来记录自己的日记。在介绍了多线程和网络编程后,分别通过基于TCP和UDP技术设计了一个图形界面的双人聊天程序,该程序稍加改动即可实现多人在线聊天。在介绍了泛型类、泛型接口和泛型方法的定义和使用方法后,通过一个单链表的例子,演示了用泛型来实现单链表的技术,这个例子稍加改动即可实现双向链表,同时,将来在学习数据结构的过程中此例将非常容易实现各种算法。
读者在学习本书的过程中可以分为三个阶段:第一个阶段包括第1、2章,是Java的基本语法部分,主要介绍Java开发环境的安装配置和变量、常量、表达式及基本语句。没有C语言基础的学生需要仔细阅读这一部分,已经有C语言基础的学生可以快速浏览,只注意与C语言不同的地方即可。第二个阶段是本书的重点,包括第3~6章,是面向对象的知识和异常处理,包括类与对象、继承、多态、接口、抽象类等面向对象的知识。第三个阶段包括第7~13章,属于专题类型的内容,包括核心类库以及字符串、集合常用类、文件操作的类、图形界面编程、多线程、泛型、网络编程、JDBC数据库编程等,读者可以根据需要单独学习某一章。
本书由山东建筑大学计算机学院邢国波副教授、杨朝晖和郭庆主编。北京邮电大学计算机学院的邢惠锋参与了全书的文字校验工作,在此向他表示感谢。
本书的编者是从事多年Java和面向对象教学的教师,编者还曾任上市软件公司软件开发工程师和系统分析师。他们在Java和面向对象的教学与开发工作中深有体会,对哪些地方不好理解、哪些地方容易出错都很清楚。在编写本书的过程中都将这些经验融入书中。
由于编者水平有限,书中难免存在疏漏和不足,恳请读者给予批评指正,从而使本书得以改进和完善。
编 者
|
|