本书是“十二五”普通高等教育本科国家级规划教材。本书全面介绍Java语言程序设计的基础知识、运行机制、多种编程方法和技术,力求建立牢固扎实的理论基础,系统、有序地进行程序设计和面向对象方法的基础训练;为操作系统、数据库应用、网络通信、Web应用等软件领域的实际应用问题,提供基于Java技术的解决方案。本书主要内容包括:Java开发运行环境JDK和MyEclipse,Java语言基础,类的封装、继承和多态,接口、内部类和Java API,异常处理,图形用户界面,多线程,输入/输出流和文件操作,网络通信,数据库应用,Web应用和综合应用设计。这些内容是构成Java应用程序的基本要素和必备知识。本书可作为普通高等学校计算机及相关专业本科的Java语言程序设计课程教材,或使用Java语言从事软件开发人员的参考书。
		
	
叶核亚,女,南京工程学院计算机工程学院教师,毕业于南京大学。多年来一直教授"Java程序设计”、"数据结构”等课程,编写的教材荣获普通高等教育"十一五”国家级规划教材、”十二五"普通高等教育本科国家级规划教材等。
目    录
第1章  Java概述	1
1.1  了解Java	1
1.1.1  Java的诞生和发展	1
1.1.2  Java的特点	2
1.1.3  Java核心技术	5
1.2  JDK	7
1.2.1  JDK的安装和设置	8
1.2.2  Application应用程序的编辑、编译和运行	10
1.2.3  包	10
1.3  MyEclipse	15
1.3.1  MyEclipse集成开发环境	15
1.3.2  Application应用程序的编辑、编译和运行	16
1.3.3  设置MyEclipse环境属性	18
1.3.4  设置项目属性	20
1.3.5  程序调试技术	21
习题1	23
实验1  Application应用程序的编辑、编译和运行	24
第2章  Java语言基础	25
2.1  语言成分	25
2.1.1  标识符与关键字	25
2.1.2  基本数据类型	26
2.1.3  变量与常量	28
2.1.4  运算符与表达式	29
2.2  流程控制语句	35
2.2.1  顺序结构语句	36
2.2.2  选择语句	36
2.2.3  循环语句	38
2.2.4  转移语句	43
2.3  数组	44
2.3.1  一维数组	44
2.3.2  二维数组	47
2.4  静态方法	50
2.4.1  方法声明与调用	50
2.4.2  方法重载	51
2.4.3  参数传递	51
2.4.4  递归方法	56
2.5  字符串	57
习题2	62
实验2  Java程序设计基础	63
第3章  类的封装、继承和多态	66
3.1  类和对象	66
3.1.1  类	66
3.1.2  对象	68
3.2  类的封装性	70
3.2.1  构造与析构	70
3.2.2  对象的引用和运算	72
3.2.3  访问控制	73
3.2.4  静态成员	75
3.2.5  浅拷贝与深拷贝	80
3.3  类的继承性	83
3.3.1  由继承派生类	83
3.3.2  继承原则及作用	84
3.3.3  子类的构造方法	86
3.4  类的多态性	87
3.4.1  子类声明多态成员	87
3.4.2  类型的多态	91
3.4.3  何时确定执行哪个多态方法?怎样执行	91
3.4.4  多态的方法实现	93
3.5  类的抽象性	97
3.5.1  用继承刻画包含关系	97
3.5.2  抽象类	98
3.5.3  最终类	103
习题3	103
实验3  类的封装、继承和多态	105
第4章  接口、内部类和Java API基础	107
4.1  接口与实现接口的类	107
4.2  内部类和内部接口	113
4.3  Java API基础	116
4.3.1  java.lang包中的基础类库	116
4.3.2  java.util包中的工具类库	121
4.4  泛型**	126
习题4	129
实验4  接口与实现接口的类	130
第5章  异常处理	132
5.1  异常处理基础	132
5.1.1  异常处理机制的必要性	132
5.1.2  错误	133
5.1.3  异常	134
5.2  异常处理措施	136
5.2.1  异常处理语句	137
5.2.2  抛出异常	139
5.2.3  定义异常类	140
习题5	141
实验5  异常的抛出、捕获并处理	142
第6章  图形用户界面设计	143
6.1  AWT组件及属性类	143
6.1.1  AWT组件	143
6.1.2  布局管理	147
6.1.3  颜色和字体	149
6.2  事件处理	149
6.2.1  委托事件模型	149
6.2.2  AWT事件类和事件监听器接口	154
6.3  Swing组件及事件	156
6.3.1  Swing组件和布局	156
6.3.2  文本显示和编辑组件及事件	158
6.3.3  按钮组件	163
6.3.4  列表框和组合框组件及事件	164
6.3.5  中间容器	166
6.3.6  定制对话框	167
6.3.7  菜单组件	175
6.3.8  表格组件	183
6.4  图形设计	187
习题6	193
实验6  图形用户界面设计	195
第7章  多线程编程	203
7.1  进程和线程	203
7.1.1  进程	203
7.1.2  线程	205
7.2  Java的线程对象	206
7.2.1  Runnable接口和Thread类	207
7.2.2  线程对象的优先级	210
7.2.3  线程对象的生命周期	211
7.2.4  使用线程实现动画设计	212
7.3  线程互斥和线程同步	217
7.3.1  交互线程,与时序有关的错误	217
7.3.2  交互线程的竞争与互斥	219
7.3.3  交互线程的协作与同步	223
习题7	234
实验7  线程设计	235
第8章  流和文件操作	238
8.1  文件和目录	238
8.1.1  文件	238
8.1.2  目录	240
8.1.3  文件系统	241
8.2  字节流	242
8.2.1  流的概念	242
8.2.2  抽象字节流	243
8.2.3  文件字节流	244
8.2.4  数据字节流	247
8.2.5  对象字节流	252
8.2.6  管道字节流	255
8.3  字符流	259
8.3.1  字符流类	259
8.3.2  Java标准输入、输出	262
8.4  文件操作	263
8.4.1  文件类及其过滤器	263
8.4.2  文件选择对话框组件	267
习题8	276
实验8  流和文件操作	277
第9章  Socket通信	278
9.1  网络编程基础	278
9.2  TCP Socket通信	281
9.3  UDP Socket通信	295
9.3.1  UDP Socket点对点通信	295
9.3.2  UDP组播通信	299
习题9	304
实验9  Socket通信	305
第10章  数据库应用	306
10.1  关系数据库系统	306
10.1.1  关系模型	306
10.1.2  客户-服务器结构的关系数据库系统	308
10.1.3  结构化查询语言SQL	309
10.2  MySQL数据库	313
10.2.1  安装数据库,启动数据库服务	313
10.2.2  MySQL数据库工作台	314
10.3  JDBC	316
10.3.1  JDBC的作用和功能	316
10.3.2  指定JDBC驱动程序	317
10.3.3  连接数据库	318
10.3.4  执行SQL语句	319
10.3.5  处理数据查询结果集	320
习题10	327
实验10  数据库应用	327
第11章  基于JSP的Web应用	329
11.1  Web浏览基础	329
11.2  JSP技术	332
11.2.1  JSP原理	332
11.2.2  运行JSP	333
11.2.3  JSP语法	338
11.2.4  基于JSP提供数据库应用服务的Web应用	345
习题11	347
实验11  基于JSP的Web应用设计	347
第12章  综合应用设计	349
12.1  集合框架	349
12.1.1  集合	350
12.1.2  映射	354
12.2  反射	355
12.3  使用复杂Swing组件	356
12.3.1  BoxLayout盒式布局和Box容器	357
12.3.2  列表框	357
12.3.3  表格	362
12.3.4  多文档界面	362
12.3.5  树	367
12.4  数据库应用	383
12.5  课程设计的要求和选题	398
附录A  ASCII字符与Unicode值	410
附录B  Java语言的关键字	411
附录C  Java基本数据类型	412
附录D  Java语言的运算符及其优先级	413
附录E  java.lang包API(部分)	414
附录F  MyEclipse常用菜单命令	419
参考文献	420