概述
1.1什么是Java语言1
1.1.1Java语言的特点1
1.1.2Java的三层架构3
1.1.3Java语言的目标3
1.1.4Java虚拟机4
1.1.5垃圾收集5
1.1.6代码安全5
1.2一个基本的Java应用程序8
1.2.1开发环境的安装8
1.2.2Java应用程序9
1.3程序的编译和运行11
1.3.1编译11
1.3.2运行11
1.4常见错误12
1.4.1编译时错误12
1.4.2运行时错误13
1.5使用Java核心API文档14
习题17
标识符和数据类型2.1Java的基本语法单位18
2.1.1空白、注释及语句18
2.1.2关键字20
2.1.3标识符20
2.2Java编码体例21
2.3Java的基本数据类型22
2.3.1基本数据类型22
2.3.2类型转换24
2.3.3变量、说明和赋值25
2.4复合数据类型26
2.4.1概述26
2.4.2Java的复合数据类型27
2.5类和对象的初步介绍27
2.5.1Java中的面向对象技术27
2.5.2Java中的类定义29
2.5.3Java中与OOP有关的关键字30
2.5.4类定义示例33
2.5.5创建一个对象36
2.5.6引用变量的赋值38
2.5.7自动初始化和null引用值39
2.5.8术语概述39
习题40
表达式和流程控制语句3.1表达式42
3.1.1操作数42
3.1.2运算符46
3.1.3表达式的提升和转换48
3.1.4数学函数49
3.2流控制50
3.2.1表达式语句50
3.2.2块50
3.2.3分支语句51
3.2.4循环语句56
3.2.5break与continue语句59
3.2.6注释语句61
习题62
数组、向量和字符串4.1数组65
4.1.1数组说明65
4.1.2创建数组66
4.1.3数组边界69
4.1.4数组元素的引用69
4.1.5多维数组70
4.1.6数组复制75
4.2Vector类76
4.2.1概述77
4.2.2Vector类的构造方法77
4.2.3Vector类对象的操作78
4.2.4Vector类中的其他方法79
4.2.5Vector类的使用举例80
4.3字符串类型82
4.3.1字符串简述82
4.3.2字符串说明及初始化82
4.3.3字符串处理82
4.3.4几个特殊处理84
习题86
进一步讨论对象和类5.1抽象数据类型88
5.1.1概述88
5.1.2定义方法89
5.1.3按值传送92
5.1.4重载方法名94
5.2对象的构造和初始化95
5.2.1显式成员初始化95
5.2.2构造方法95
5.2.3默认的构造方法97
5.2.4构造方法重载97
5.2.5finalize方法98
5.3this引用99
5.4子类99
5.4.1“is a”关系100
5.4.2extends关键字1015.4.3单重继承102
5.4.4多态性104
5.4.5方法自变量和异类集合104
5.4.6instanceof运算符105
5.4.7转换对象106
5.5方法重写107
5.5.1方法重写示例107
5.5.2应用重写的规则111
5.5.3父类构造方法调用113
5.6Java包114
5.6.1Java包的概念114
5.6.2import语句115
5.6.3目录层次关系及classpath环境变量116
5.6.4访问权限与数据隐藏118
5.6.5封装119
5.7类成员120
5.7.1类变量120
5.7.2类方法122
5.8关键字final124
5.8.1终极类124
5.8.2终极方法125
5.8.3终极变量125
5.9抽象类127
5.10接口129
5.10.1接口的定义129
5.10.2接口的实现130
5.11内部类133
5.11.1内部类的概念133
5.11.2匿名类135
5.11.3内部类的工作方式136
5.12过时信息137
习题139
Java语言中的异常6.1异常142
6.2异常示例145
6.3异常处理145
6.3.1try,catch和finally语句146
6.3.2再讨论前面的示例146
6.3.3公共异常147
6.4异常分类148
6.5抛出149
6.6创建自己的异常149
习题151
Java的图形用户界面设计7.1AWT与Swing152
7.2容器153
7.2.1顶层容器153
7.2.2使用JFrame创建一个应用程序154
7.2.3内容窗格154
7.2.4面板156
7.3布局157
7.3.1一个简单的例子157
7.3.2FlowLayout布局管理器159
7.3.3BorderLayout布局管理器161
7.3.4GridLayout布局管理器162
7.3.5CardLayout布局管理器164
7.3.6BoxLayout布局管理器166
7.3.7其他布局管理器171
7.4事件处理172
7.4.1事件处理模型172
7.4.2事件的种类174
7.4.3一个较复杂的例子176
7.4.4多监听程序178
7.4.5事件适配器178
习题180Swing组件8.1按钮182
8.1.1普通按钮182
8.1.2切换按钮、复选按钮及单选按钮187
8.2标签192
8.3组合框195
8.4列表198
8.5文本组件203
8.5.1文本域204
8.5.2文本区208
8.6菜单组件211
8.6.1菜单栏211
8.6.2菜单212
8.6.3菜单项212
8.6.4复选菜单项和单选菜单项214
8.6.5弹出式菜单217
8.7对话框、标准对话框与文件对话框220
8.7.1对话框220
8.7.2标准对话框221
8.7.3文件对话框226
8.8控制组件外观229
8.8.1颜色229
8.8.2字体229
8.8.3绘图231
习题234
Java Applet9.1编写Applet237
9.2Applet的方法和Applet的生命周期239
9.3Applet的运行240
9.3.1用于显示Applet的方法240
9.3.2appletviewer2429.3.3HTML与〈applet〉标记243
9.3.4Applet参数的读取244
9.3.5Applet与URL246
9.4在Applet中的多媒体处理247
9.4.1在Applet中显示图像247
9.4.2在Applet中播放声音248
9.5Applet的事件处理250
9.6Applet与普通应用程序的结合251
习题253
Java数据流10.1数据流的基本概念254
10.1.1输入数据流255
10.1.2输出数据流256
10.2基本字节数据流类257
10.2.1文件数据流257
10.2.2过滤流259
10.2.3管道数据流261
10.2.4对象流262
10.2.5可持续性263
10.3基本字符流266
10.3.1读者和写者266
10.3.2缓冲区读者和缓冲区写者268
10.4文件的处理272
10.4.1File类272
10.4.2随机访问文件274
习题275
线程11.1线程和多线程277
11.1.1线程的概念277
11.1.2线程的结构27811.2线程的状态279
11.3创建线程280
11.3.1创建线程的方法一——继承Thread类281
11.3.2创建线程的方法二——实现Runnable
接口283
11.3.3关于两种创建线程方法的讨论285
11.4线程的启动286
11.5线程的调度286
11.6线程的基本控制288
11.6.1结束线程288
11.6.2检查线程289
11.6.3挂起线程289
11.7同步问题291
11.7.1线程间的通信291
11.7.2线程间的资源互斥共享293
11.7.3对象的锁定标志295
11.7.4同步方法296
11.8死锁297
11.9线程交互——wait()和notify()299
11.9.1问题的提出299
11.9.2解决方法300
11.9.3守护线程301
11.9.4综合应用302
习题307
Java的网络功能12.1概述309
12.2使用InetAddress311
12.3统一资源定位器312
12.3.1URL的概念312
12.3.2URL的构造方法313
12.3.3与URL相关的异常314
12.3.4获取URL对象属性314
12.3.5读入URL数据31512.4Socket接口318
12.4.1Socket的基本概念319
12.4.2Socket通信的基本步骤321
12.4.3Socket通信的程序设计321
12.5Java编程综合实例323
习题331
参考文献332
展开