
Java语言基础教程
《Java语言基础教程》是2008年清华大学出版社出版的图书,作者是朱福喜。本书利用通俗易懂的语言和大量生动典型的实例,由浅入深、循序渐进地介绍Java语言的基础知识与编程机制。
基本介绍
- 书名:Java语言基础教程
- ISBN:9787302170747
- 页数:408页
- 出版社:清华大学出版社
- 出版时间:2008年4月1日
- 装帧:平装
- 开本:16
内容简介
《Java语言基础教程》从初学者的角度出发,从面向对象程式设计的理论和方法中阐述使用Java语言的编程技巧。
作者简介
朱福喜,ZhuFuxi,中国人,男,博士,教授,博士生导师。浙江大学数学系获学士学位、武汉大学计算机科学系获硕士学位和博士学位。一直从事人工智慧和分散式计算方面的教学和科研工作。曾参与和主持了国家自然科学基金项目《专家系统开发环境与推理工具系统(87102034)》、国家863项目《国家科委办公知识信息系统(863-306-04-04-6)》和国防军工预演项目《支撑Ada语言的并行分布计算环境(15.5.1)》的开发。1993年3月赴美国加州AlphaOmega公司从事项目合作半年,2000年8月访问美国西东(SetonHallUni.)大学,从事远程教育和并行分布计算方面和研究一年。发表论文30余篇(其中13篇被EI检索),编写的教材和专着共9部。参与开发的多媒体智慧型套用软体系统获2000年教育部科技进步二等奖,编写的教材《人工智慧原理》和《Java语言与面向对象程式设计》获2002年中南地区高校优秀教材奖。研究方向:人工智慧中的自动推理、Web知识挖掘、分布并行计算、企业级套用软体(J2EE)。
内容简介
《Java语言基础教程》列举了大量的图表和浅显易懂的实例,把学习Java的难点、要点展示的淋漓尽致、易学易懂。《Java语言基础教程》共分9章,包括:Java概述、Java语言基础、面向对象程式设计、流和档案、Applet、图形用户界面设计、异常处理、多执行绪、Java网路编程。作者精心设计的综合实例——俄罗斯方块游戏,按照章节的内容安排和难易程度将实例分解并分布于各章节,章后配有自测题和练习题,为初学者的入门学习起到“切实(160个实例)可行(226个自测题+121个练习题)”的指导性作用,并于书后提供自测题的参考答案。
全书结构严谨,兼有普及与提高的双重功能,可广泛适用于高等院校计算机及相关专业的Java语言教材,也适合作为软体开发人员及其他相关人员的参考书。
目录
第1章 Java概述
1.1 Java十周年
1.2 面向对象程式设计概述
1.2.1 对象
1.2.2 类
1.2.3 讯息
1.2.4 继承
1.2.5 多态性
1.2.6 抽象
1.2.7 封装
1.3 Java语言的特色
1.4 JDK的下载、安装与环境配置
1.5 Java编译器与Java虚拟机
1.5.1 Java.编译器
1.5.2 Java虚拟机
1.6 Java独立应用程式的基本结构
1.6.1 程式的注释
1.6.2 类的定义
1.6.3 方法的声明
1.6.4 程式的执行语句
1.6.5 一个应用程式从编辑到执行的完整过程
1.7 JavaApplet程式的基本结构
自测题
练习题
第2章 Java语言基础
2.1 基本数据类型
2.1.1 简单类型
2.1.2 引用类型
2.1.3 常量
2.1.4 变数的声明和保存
2.2 数值类型的运算
2.2.1 数值类型的基本运算
2.2.2 位运算
2.3 数值类型的高级运算
2.3.1 数学函式运算及数学常量
2.3.2 快捷操作符和类型转换
2.4 逻辑和比较
2.4.1 逻辑操作符
2.4.2 比较操作符
2.4.3 instanceof操作符
2.5 条件执行语句
2.5.1 简单的if语句
2.5.2 if-else选择语句
2.5.3 嵌套的if-else-if语句
2.5.4 switch语句
2.6 循环控制语句
2.6.1 循环的概念
2.6.2 for循环
2.6.3 while循环
2.6.4 do-while循环
2.6.5 break和continue语句
2.7 数组
2.7.1 声明数组
2.7.2 初始化数组
2.7.3 访问数组的元素
2.7.4 数组作为方法的参数
2.8 字元串
2.8.1 字元串类String
2.8.2 StringBuffer类
2.8.3 通过输入字元串来输入各种基本类型
2.9 综合实例——俄罗斯方块游戏
2.9.1 游戏介绍
2.9.2 用数组表示方块的28种状态
2.9.3 位运算和位移运算在游戏中的使用
2.9.4 用for语句和break语句在游戏中的联合使用
2.9.5 用for语句和continue语句在游戏中的联合使用
自测题
练习题
第3章 面向对象程式设计
3.1 类与对象
3.1.1 类的定义
3.1.2 创建对象和构造方法
3.1.3 垃圾回收机制
3.2 类成员的定义
3.2.1 成员变数的定义
3.2.2 成员方法的定义
3.2.3 变数的作用域
3.3 类的访问与封装
3.3.1 访问成员变数与成员方法
3.3.2 成员的访问许可权的控制
3.3.3 静态成员变数与静态成员方法
3.4 重载
3.4.1 重载成员方法
3.4.2 重载构造方法
3.5 继承与覆盖
3.5.1 类的继承层次
3.5.2 继承与构造方法
3.5.3 覆盖
3.5.4 抽象与终结
3.5.5 Java的基类Object
3.6 接口与多态
3.6.1 多重继承和接口
3.6.2 多态性
3.7 实现多态性下的计算
3.7.1 用抽象类实现多种形状面积的累加
3.7.2 用接口实现多种形状面积的累加
3.7.3 用一个Object数组实现多种形状面积的累加
3.8 包
3.8.1 Java平台定义的包
3.8.2 包的创建
3.8.3 包的使用
3.8.4 编译和生成包
3.9 综合实例
3.9.1 俄罗斯方块游戏中的类的继承关係
3.9.2 俄罗斯方块游戏中的ErsBox类
自测题
练习题
第4章 流和档案
4.1 流的基本概念
4.2 档案类及其操作
4.2.1 创建与删除档案
4.2.2 获取档案或目录属性
4.2.3 获取目录成员
4.2.4 过滤档案名称
4.3 位元组级输入输出类
4.3.1 档案输入流(FilelnputStream)
4.3.2 档案输出流(FileOutputStream)
4.3.3 位元组数组输入流(ByteArraylnputStream)
4.3.4 位元组数组输出流(ByteArrayOutputStream)
4.3.5 回退输入位元组流(PushbacklnputStream)
4.3.6 数据输出流(DataOutputStream)
4.3.7 数据输入流(DatalnputStream)
4.3.8 快取输出流(BufferedOutputStream)
4.3.9 快取输入流(BufferedlnputStream)
4.3.10 格式化输出流(PrintStream)
4.4 字元级输入输出类
4.4.1 字元输入流(Reader)
4.4.2 字元输出流(Writer)
4.4.3 FileReader类
4.4.4 BufferedReader类
4.4.5 FileWriter类
4.4.6 BufferedWriter类
4.4.7 PrintWriter类
4.4.8 读取字元数组类(CharArrayReader)
4.4.9 写字元数组类(CharArrayWriter)
4.4.10 回退输入字元流(PushbackReader)
4.5 流的标记分解类(StreamTokenizer)
4.6 对象级输入输出类
4.6.1 Serializable接口
4.6.2 对象输出流(ObjectOutputStream)
4.6.3 对象类输入流(ObjectInputStream)
4.7 RandomAccessFile
4.8 系统I/O流
自测题
练习题
第5章 Applet
5.1 Applet的基本概念
5.1.1 Applet的构架
5.1.2 Applet类的实例变数
5.1.3 Applet类的成员方法
5.1.4 Applet的生命周期
5.2 Applet标记
5.2.1 Applet标记中的属性
5.2.2 利用标记NApplet传递参数
5.3 Applet的安全限制与档案读取方法
5.3.1 统一资源定位器URL
5.3.2 获取URL
5.3.3 使用URL载入数据
5.4 Applet环境与状态显示
5.4.1 Applet的状态显示
5.4.2 Applet的环境的获取和利用
5.5 Applet的绘图与控制
5.5.1 在Applet中利Graphics类绘图
5.5.2 在Appletd?显示与更新
5.5.3 在Applet中加入控制项
5.6 综合实例——交通灯控制
自测题
练习题
第6章 图形用户界面设计
6.1 抽象视窗工具包(AWT)简介
6.2 基本的视窗类
6.2.1 Container类
6.2.2 Window类
6.2.3 Panel类
6.2.4 Frame类
6.2.5 Dial09
6.2.6 简单视窗举例
6.3 简单的GUI构件类
6.3.1 Button(按钮)类
6.3.2 TextField(文本域)类
6.3.3 Label(标籤)类
6.3.4 TextArea(文本区)类
6.3.5 List(列表)类
6.4 简单的事件处理
6.4.1 动作事件回响的一般步骤
6.4.2 ActionListener接口
6.5 事件类型及其处理
6.5.1 事件源
6.5.2 事件监听接口
6.5.3 低级事件
6.5.4 高级事件
6.5.5 事件、事件源与监听接口
6.5.6 监听接口适配器
6.6 布局管理
6.6.1 FlowLayout
6.6.2 BorderLayout
6.6.3 GridLayout
6.6.4 CardLayout
6.6.5 GridBagLayout
6.7 选单系统
6.8 对话框
6.8.1 Dialog类
6.8.2 FileDialog类
6.9 图形类与图形的绘製
6.9.1 画线
6.9.2 画矩形
6.9.3 设定色彩和画其他图形
6.10 AWT与Swing
6.11 综合实例——俄罗斯方块游戏的界面实现
6.11.1 主类ErsBlocksGame
6.11.2 控制台类ControlPanel
6.11.3 游戏显示视窗GameCanvas
自测题
练习题
第7章 异常处理
7.1 错误和异常的产生与处理
7.2 Java平台定义的异常
7.2.1 异常类的层次结构
7.2.2 Throwable类
7.2.3 Error类和Exception类
7.2.4 隐式和显式异常
7.3 自定义的异常
7.4 抛出一个异常
7.4.1 抛出一个显式异常
7.4.2 处理异常的方法
7.5 捕获异常
7.5.1 try-catch错误处理
7.5.2 多异常的捕获和处理
7.5.3 finally子句
7.6 异常处理的嵌套
7.6.1 在try块中包含有try-catch语句
7.6.2 在捕获异常之后又出现了异常
7.6.3 在finally子句中包含有try—catch语句
7.7 俄罗斯方块游戏中的异常处理
7.7.1 在ErsBox类中克隆对象时捕获异常
7.7.2 在ErsBlock类中克隆对象时捕获异常
7.7.3 在ControlPanel类中克隆对象时捕获异常
自测题
练习题
第8章 多执行绪
8.1 执行绪的基本概念
8.1.1 执行绪类Thread
8.1.2 执行绪的状态
8.1.3 执行绪的优先权
8.2 执行绪的使用方法
8.2.1 通过继承Thread类创建执行绪
8.2.2 通过实现Runnable接口创建执行绪
8.3 多执行绪的使用方法
8.3.1 多执行绪的创建方法
8.3.2 判断执行绪是否存在
8.3.3 执行绪的结合(ioin)
8.3.4 执行绪的优先权的获取和设定
8.4 多执行绪的同步处理
8.4.1 执行绪synchronized方法
8.4.2 Applet@使用执行绪
8.4.3 执行绪的等待与唤醒
8.5 综合实例——俄罗斯方块游戏中使用的执行绪
8.5.1 通过继承Thread类实现俄罗斯方块游戏
8.5.2 通过Runnable接口实现游戏类方块
自测题
练习题
第9章 Java网路编程
9.1 Java网路套用基础
9.1.1 IP位址
9.1.2 连线埠
9.1.3 套接字
9.1.4 数据包
9.1.5 Internet协定
9.2 基于URL网路套用
9.2.1 直接从URL读取内容
9.2.2 建立一个URL连线并从中读取内容
9.3 以Socket方式实现通信
9.3.1 客户端Socket
9.3.2 伺服器端Socket
9.3.3 简单邮件系统
9.3.4 有关目录的客户/伺服器系统
9.4 用Datagram方式实现通信
9.4.1 数据包和套接字
9.4.2 用Datagram实现客户/伺服器模式
9.5 综合实例——俄罗斯方块双人对战网路游戏
9.5.1 游戏的实现概要
9.5.2 基于Socket的C/S模式的通信
9.5.3 对打游戏具体实现
9.5.4 游戏的运行
自测题
练习题
自测题答案
参考文献