Java 2 程序设计实用教程
作者 : 陈帆 和红杰 周荣辉
出版日期 : 2005-09-29
ISBN : 7-111-17250-7
定价 : 29.00元
教辅资源下载
扩展信息
语种 : 简体中文
页数 : 281
开本 : 16开
原书名 :
原出版社:
属性分类: 教材
包含CD :
绝版 :
图书简介

本书是作者基于多年的教学与开发经验精心编撰而成。书中的章节安排合理,重点突出,讲解深入浅出,通俗易懂,示例程序结构严谨、规范、易学易用。书中针对较难理解而编程中却较为常用的知识点,配备了典型实用的例子,在向读者生动讲解Java编程知识与技巧的同时,也培养了读者的编程兴趣,提高了读者实际解决问题的能力。书中充分展示了Java语言的强大功能与实用性,以及Java编程设计的艺术性。

本书特点
●简明实用,讲解透彻
●理论结合实际,富含大量实例
●配有上机实验与课程设计
●所有示例和实验题目均有电子文件,可联系 “教学支持联系人”获取

图书特色

图书前言

随着计算机及其应用技术日新月异的发展变化,计算机软件开发技术也在不断进步,传统的结构化编程已无法完全适应当今软件开发的需要。面向对象编程技术为软件开发带来了一场深刻的变革。与传统的面向过程的结构化编程技术相比,面向对象编程技术凭借其自身的许多优点,提高了代码的可重用性和软件开发的效率,降低了软件维护的复杂度。而且,面向对象编程思想更符合人们的思维习惯,因此已经成为目前开发大型软件所采用的主要编程方法。
  Java语言作为新一代的面向对象的程序设计语言,已经成为目前极具吸引力且功能强大的程序设计语言。虽然面向对象编程技术涉及的概念较多,学习起来不容易掌握,但Java却是公认的一种优秀的面向对象编程语言。与C++相比,Java更体现了面向对象编程的简单性。通过学习Java语言,读者很容易接受面向对象的概念和设计方法,并能很快编写出合格的面向对象Java程序。一些抽象的、很难理解的概念,如继承、多态、异常、多线程等,在Java中都得到了简化。因此,学习和掌握Java语言已经成为软件开发人员的迫切需求。在高等院校,教授Java语言编程技术也非常适合作为普及面向对象编程语言的课程。
  Java伴随着Internet问世,又随着Internet的发展而不断成熟。Java是精心设计的网络编程语言,它具有简单、面向对象、平台无关、安全和健壮性等诸多特点,内置了对多线程和网络的充分支持,是基于网络编程的首选工具语言,是网络编程的标准开发工具语言。如今计算机及其网络应用已深入人类生活的方方面面,作为一名大学生,无疑应该掌握一定的计算机知识和编程技能。同时,为了迎接信息时代的挑战,学习和掌握Java语言无疑会给广大学生将来步入社会带来更多的机遇。
  本书的目标是帮助学生深入、细致、系统地学习并掌握Java语言知识,深入理解Java语言的精髓,掌握Java语言的编程知识和编程技术。主要内容包括:Java运行环境JSDK,Java语言基础,面向对象编程技术及其2个核心概念、3个重要特性,Java类和对象的高级特征,数组与字符串,异常处理机制,Applet(小应用程序),图形用户界面设计,多线程机制,多媒体编程,输入/输出流与文件管理。这些内容是编写Java程序的基本要素和必备知识。
  本书简明实用,便于自学,反映了Java最新技术与应用,力求体现“知识性、实践性、新技术与应用性相结合”的特点:
  1)讲透Java的基础知识和基本的编程方法与技术。在内容安排与写法上,力求深入浅出、叙述详细、概念清晰、算法具体、通俗易懂、便于自学。
  2)理论结合实际。Java是一门实践性很强的编程语言。本书贯彻从实践中来到实践中去的原则,理论结合实例讲解,始终以“培养编程兴趣、启发编程思想、掌握面向对象编程思维、提高编程能力”为目标。书中每个实例都是作者根据所讲述的知识点精心设计的,展示了如何将Java编程知识和编程技巧应用于实践中,具有很强的实用性。
  3)每章配有习题,最后还配有上机实验题目和课程设计,以培养学生解决实际问题的能力与创新精神。书中的所有示例均配有电子文件,非常方便读者学习,需要者可登录机械工业出版社华章分社网站(http://www.hzbook.com)下载。

本书特色
  * 学习目标与重点
  每章的开始都给出本章的学习目标及本章重点。使读者在学习前明白本章要掌握的内容,在学习时可以抓住重点,有针对性地学习。
  * 重要提示
  对于学习中一些重要的概念,特别是容易出错、不容易理解掌握的知识点,以及对编程有帮助的经验等都给予了特别的提示。
  * 小结
  每章的最后都会给出本章小结,对本章所讲述的内容与知识点给出简要的概括。使读者每学完一章内容后能把握本章的内容与要点。
  * 习题
  每章的最后都给出具有针对性的习题,每个习题都是精心设计挑选的,用来巩固、消化本章学习的知识。把书中的理论知识通过习题与实践结合起来,有利于读者更快掌握每章的Java编程知识,巩固所学内容。
  * 上机实验与课程设计
  结合每章所讲述的内容精心设计了有针对性的上机实验题目。上机实验的目的是提高读者的分析问题、解决问题和实际动手编程能力;提高读者对Java语言编程知识的综合应用能力,逐步理解、掌握Java语言程序设计的规范与技巧;在上机编程和调试程序的过程中,提高读者调试程序、编写程序的能力。本书注重理论知识与实际编程相结合。通过这些实验题目,使读者在边学边练的过程中掌握Java语言。同时还设计了可作为课程设计的综合设计。每个课程设计都有实际的意义,可设计成一个小型软件。读者把所学的知识更加灵活地应用于编程中,在提高读者编程兴趣的同时,巩固所学知识,提高编程能力。

教学支持
  为方便选择本书作为教材的教师授课,减少教师编写教案的工作量,本书配有采用PowerPoint 2003制作的电子教案。该电子教案是在作者多年教学的教案基础上,结合本书制作而成的。教师不仅可以直接使用本教案,还可以修改或重新组织其中的内容以适合自己的教学需要。此外,作者还向所有使用此书的读者开放书中所有的示例程序源代码。
  选择本书作为教材的教师可以直接登录华章网站免费下载与教材配套的电子教案和所有示例源程序代码。
  作者在编著本书时,始终抱着严谨、审慎的态度,对书中的每个概念和说明,都一再推敲并多方查证,对书中的每个例子反复调试运行直至有正确无误的运行结果。尽管如此,错误仍然无法完全避免,敬请读者批评指正。感谢读者选择本书,欢迎读者提出批评和修改建议,也欢迎读者来信询问、探讨关键知识点的讲述方法,我们一定会给您一个满意的答复,请发Email至:mrchenfan@sohu.com。

作  者
2005年8月

图书目录

第一部分  基 础 教 程
第1章  Java语言概述 1
1.1  Java语言简介 1
1.1.1  Java语言的产生 1
1.1.2  为什么要学习Java 1
1.2  Java的特点 2
1.3  Java程序及其实现机制 3
1.3.1  Java虚拟机 3
1.3.2  无用内存自动回收机制 3
1.3.3  Java与C/C++的区别 4
1.4  建立Java开发环境 4
1.4.1  Java运行环境安装 4
1.4.2  配置环境变量 5
1.5  Java程序的运行 6
1.5.1  Java应用程序 6
1.5.2  Java小应用程序 7
1.5.3  常用的JSDK命令 9
1.6  关于Java的几个常见问题 9
1.7  小结 10
1.8  习题 10
第2章  Java语言基础 11
2.1  标识符与关键字 11
2.1.1  标识符 11
2.1.2  关键字 11
2.2  变量、常量和注释 12
2.2.1  变量 12
2.2.2  常量 12
2.2.3  注释 13
2.3  基本数据类型 13
2.3.1  整型 13
2.3.2  浮点类型 14
2.3.3  字符类型 15
2.3.4  布尔类型 16
2.3.5  字符串类型 17
2.4  变量赋初值 17
2.5  基本数据类型优先关系及相互的转换 18
2.6  运算符与表达式 19
2.6.1  赋值运算符 20
2.6.2  扩展赋值运算符 21
2.6.3  算术运算符 21
2.6.4  关系运算符 23
2.6.5  布尔逻辑运算符 23
2.6.6  位运算 24
2.6.7  条件运算符 26
2.6.8  字符串连接符号 26
2.6.9  其他运算符 26
2.7  表达式 27
2.8  流程控制语句 28
2.8.1  结构化程序设计流程控制结构 28
2.8.2  分支语句 29
2.8.3  循环结构 33
2.8.4  跳转语句 37
2.9  小结 39
2.10  习题 39
第3章  面向对象编程—类与对象 41
3.1  面向对象编程技术 41
3.2  类的创建 43
3.2.1  类声明 43
3.2.2  类体 44
3.2.3  声明成员变量 44
3.2.4  成员方法的声明与实现 45
3.2.5  方法的返回值 46
3.2.6  方法体 46
3.2.7  方法的调用 47
3.3  对象 47
3.3.1  创建对象 47
3.3.2  使用对象 50
3.3.3  构造方法 50
3.3.4  对象的清除 52
3.4  类的封装 53
3.4.1  访问控制权限修饰符 53
3.4.2  设置类的访问权限 54
3.5  Static关键字和静态成员 55
3.5.1  实例变量与类变量 55
3.5.2  通过类名直接访问类变量 57
3.5.3  实例方法与类方法 57
3.6  参数传递 59
3.6.1  传值—传递基本数据类型参数 59
3.6.2  传地址—对象作为参数 60
3.7  小结 61
3.8  习题 61
第4章  面向对象编程—继承与多态 62
4.1  类的继承 62
4.1.1  子类的声明 62
4.1.2  Object类 63
4.1.3  子类继承超类的成员变量 64
4.1.4  子类继承超类的成员方法 65
4.2  类的多态 66
4.2.1  this关键字 67
4.2.2  方法的重载 67
4.2.3  super关键字 69
4.2.4  成员的覆盖 70
4.2.5  子类的对象也是超类的对象 71
4.2.6  子类构造方法的定义 73
4.3  最终类与抽象类 76
4.3.1  最终类 76
4.3.2  抽象类 77
4.4  小结 79
4.5  习题 79
第5章  面向对象编程—接口、内部类与包 81
5.1  接口 81
5.1.1  接口的声明 81
5.1.2  接口的实现 82
5.1.3  理解接口 83
5.2  内部类 85
5.2.1  在外部类的方法中访问内部类 85
5.2.2  在内部类中访问外部类 86
5.2.3  静态内部类的应用 87
5.2.4  静态内部类的特殊用处 89
5.2.5  内部类的其他特性 89
5.3  包 90
5.3.1  包的命名 90
5.3.2  包的创建 91
5.3.3  访问保护 93
5.3.4  常用的Java系统包 95
5.4  jar文件 96
5.4.1  制作jar文件发布应用程序 97
5.4.2  jar命令 98
5.5  小结 99
5.6  习题 100
第6章  字符串与数组 101
6.1  String字符串 101
6.1.1  String类 101
6.1.2  获取字符串长度 104
6.1.3  字符串比较 104
6.1.4  字符串编辑 105
6.1.5  字符串检索与字符串截取 106
6.1.6  字符串与基本数据类型之间的数据转换 108
6.2  StringBuffer类 109
6.2.1  StringBuffer类的常用方法 109
6.2.2  StringBuffer类字符串的修改 111
6.2.3  StringBuffer字符串的插入与追加操作 111
6.3  数组 112
6.3.1  一维数组的声明 112
6.3.2  一维数组的创建 113
6.3.3  一维数组的初始化 113
6.3.4  数组元素的引用 114
6.3.5  数组的长度 114
6.3.6  数组的赋值与复制 115
6.3.7  多维数组 119
6.4  小结 121
6.5  习题 121
第7章  异常处理机制 122
7.1  异常处理基本概念 122
7.2  异常的产生与处理机制 123
7.2.1  异常的产生 123
7.2.2  异常处理机制—try-catch-finally语句 124
7.3  常见异常类 128
7.4  异常的处理 131
7.4.1  主动抛出异常 131
7.4.2  声明抛出异常 133
7.5  自定义异常 135
7.6  小结 136
7.7  习题 136
第8章  Applet 137
8.1  Applet的特点 137
8.1.1  小应用程序的运行过程 137
8.1.2  一个Java小应用程序 138
8.1.3  Applet类 139
8.2  小应用程序的生命周期 139
8.3  小应用程序的安全性 141
8.4  在网页中嵌入Applet 142
8.4.1  嵌入小应用程序的标签属性 142
8.4.2  向小应用程序传递参数 143
8.5  图形绘制与绘图类Graphics 144
8.5.1  paint()方法 144
8.5.2  java.awt.Graphics类 145
8.5.3  图形坐标系 145
8.5.4  绘制图形 145
8.5.5  绘制文本 146
8.5.6  设置字体 147
8.5.7  设置颜色 147
8.5.8  颜色和字体的设置 148
8.6  小结 148
8.7  习题 149
第9章  图形用户界面设计 150
9.1  用AWT生成图形用户界面 150
9.2  容器和组件 151
9.2.1  组件类—Component 151
9.2.2  容器类 152
9.2.3  框架类—Frame 153
9.3  Button类、Label类和TextField类 153
9.3.1  按钮类—Button类 154
9.3.2  标签类—Label类 154
9.3.3  文本行类—TextField类 154
9.3.4  一个图形用户程序实例 155
9.4  事件处理机制 156
9.4.1  Java的事件处理机制 156
9.4.2  委托事件处理模型 157
9.4.3  常见事件类与事件类的接口 161
9.4.4  事件适配器 163
9.4.5  常用的监听器类实现方式 165
9.5  布局管理器 167
9.5.1  FlowLayout 167
9.5.2  BorderLayout 169
9.5.3  GridLayout 170
9.5.4  CardLayout 171
9.5.5  布局管理器小结 174
9.6  小结 174
9.7  习题 174
第10章  常用的AWT组件 175
10.1  文本区 175
10.2  选择性组件 178
10.2.1  复选框与单选按钮 178
10.2.2  选择框—Choice 181
10.2.3  列表框—List 182
10.3  对话框 185
10.3.1  对话框窗口 185
10.3.2  文件对话框 185
10.4  菜单 187
10.4.1  下拉式菜单 187
10.4.2  弹出式菜单 190
10.4.3  使用菜单的几个技巧 190
10.5  Java中的窗口、鼠标与键盘事件的处理 194
10.5.1  窗口事件的处理 194
10.5.2  鼠标事件的处理 196
10.5.3  键盘事件的处理 198
10.6  小结 201
10.7  习题 201
第11章  多线程 202
11.1  多线程编程概述 202
11.1.1  程序、进程和线程 202
11.1.2  线程模型 203
11.2  线程的创建 203
11.2.1  Thread类与Runnable接口 203
11.2.2  在程序中实现多线程 204
11.3  线程的生命周期与控制 207
11.3.1  线程的生命周期 207
11.3.2  线程的调度与优先级 209
11.3.3  几个常用的控制线程的方法 211
11.4  线程同步 213
11.4.1  多线程间资源共享的同步处理 213
11.4.2  多线程合作的同步 218
11.4.3  死锁问题 223
11.5  小结 224
11.6  习题 224
第12章  多媒体编程 225
12.1  显示图像 225
12.1.1  加载图像 225
12.1.2  显示图像 226
12.2  播放声音文件 228
12.3  小结 230
12.4  习题 230
第13章  输入/输出流 231
13.1  数据流的基本知识 231
13.1.1  标准输入/输出 232
13.1.2  java.io包中的输入/输出流类 233
13.2  字节类流 234
13.2.1  字节输入流InputStream 234
13.2.2  字节输出流OutputStream 234
13.2.3  FileInputStream类实现文件的顺序读取 235
13.2.4  FileOutputStream类实现文件的顺序写 237
13.2.5  数据流 238
13.2.6  对象流 240
13.3  管道流 242
13.4  字符类流 244
13.4.1  Reader类和Writer类 244
13.4.2  字符文件流FileReader类与FileWriter类 246
13.4.3  字符缓冲流BufferedReader类与BufferedWriter类 247
13.5  文件随机访问类RandomAccessFile 248
13.6  文件对话框的使用 250
13.7  小结 254
13.8  习题 254
第14章  文件管理与File类 255
14.1  File类 255
14.1.1  File类的构造方法 255
14.1.2  File类的实例方法 256
14.2  显示目录的文件清单 258
14.2.1  无参数的list方法 259
14.2.2  文件过滤器FilenameFilter 259
14.2.3  文件过滤器FileFilter 261
14.3  文件与目录的创建与删除 262
14.4  获取文件属性 263
14.5  使用临时文件 264
14.6  运行本地可执行程序 266
14.7  小结 267
14.8  习题 267
第二部分 上机实验与课程设计
实验1  一个Java应用程序和一个简单的Java Applet 271
实验2  Java语言基础知识 273
实验3  分支语句与循环语句 274
实验4  类与对象 275
实验5  继承与多态 276
实验6  接口与内部类 277
实验7  数组与字符串 278
实验8  异常处理 279
实验9  Applet 280
实验10  GUI界面设计及事件处理 282
课程设计1  Windows系统的计算器 283
实验11  多线程 284
课程设计2  Windows系统的日期和时间属性 285
实验12  文件和输入/输出流 286
课程设计3  设计一个简单的通讯录 287
参考文献 288

教学资源推荐
作者: 史涯晴 贺汛 编著
作者: [美] 本贾尼?斯特劳斯特鲁普 (Bjarne Stroustrup)著
作者: 郑晓薇 编著
作者: 汪同庆 关焕梅 汤洁
参考读物推荐
作者: [美]凯·S.霍斯特曼(Cay S. Horstmann) 著
作者: 吴明杰 曹宇 吴丹 著