第3版 Java实用教程


第3版 Java实用教程

文章插图
Java实用教程(第3版)【第3版 Java实用教程】《Java实用教程(第3版)》是2005年11月清华大学出版社出版的图书 , 作者是马海军 。
基本介绍书名:Java实用教程(第3版)
作者:马海军
ISBN:9787302120667
定价:64元
出版社:清华大学出版社
出版时间:2005.11.01
装帧:平装
内容简介本书採用教程式的组织结构 , 每一章都建立在前面的基础之上 。本书共分14章(模组) , 每一章讨论一个有关Java的议题 。本书的特色就在于它包含了许多便于读者学习的特色内容 。重要技能 每一章都包括一些重要技能 , 并且在各章中以节标识 。思考与练习 每一章都有思考与练习 , 测试读者学习到的知识 。答案在附录中提供 。学习检查 每一节后面都有一个“学习检查” , 问题的答案在底注中 。专家问答 每一章中都有一些“专家问答” , 以一问一答的形式介绍补充知识和要点 。练习 每一章中都包含1~2个实习项目 , 帮助读者将学习的知识套用到实践中去 。图书目录目录第1章Java基础11.1Java的起源21.1.1Java与C和C++的关係31.1.2Java与C#的关係41.2Java对Internet的贡献41.2.1Javaapplets51.2.2安全51.2.3可移植性51.3Java的魔力在于位元组码51.4Java的关键术语61.5面向对象程式设计71.5.1封装81.5.2多态性91.5.3继承91.6第一个简单的程式111.6.1输入程式111.6.2编译程式121.6.3逐行分析第一个程式121.7第二个简单程式16练习1-1将加侖换算为升201.8两个控制语句211.8.1if语句211.8.2for循环语句231.9创建代码块251.10分号和定位26练习1-2改进从加侖到升的转换程式271.11Java的保留关键字301.12Java的标识符301.13思考与练习31第2章数据类型与运算符332.1Java的原语类型342.1.1整数类型342.1.2浮点型362.1.3字元型372.1.4boolean类型38练习2-1闪电有多远392.2字面值402.2.1十六进制与八进制常量412.2.2字元转义序列412.2.3字元串字面值422.3变数详解432.3.1初始化变数432.3.2动态初始化442.4作用域和变数的生命期442.5算术运算符482.6关係运算符和逻辑运算符502.7赋值运算符542.8速记赋值542.9赋值中的类型转换552.10不兼容类型的强制转换56练习2-2显示逻辑运算符的真值表592.11表达式602.11.1表达式中的类型转换612.11.2间距和圆括弧632.12思考与练习63第3章程式控制语句653.1从键盘输入字元663.2if语句673.2.1嵌套if语句693.2.2if-else-if阶梯状结构703.3switch语句71练习3-1建立一个Java帮助系统763.4for循环793.4.1for循环的一些变体803.4.2缺失部分要素的for循环813.4.3无限循环833.4.4没有循环体的循环833.4.5在for循环内部声明循环控制变数843.4.6增强型for循环853.5while循环853.6do-while循环87练习3-2改进Java帮助系统893.7使用break退出循环923.8将break语句作为一种goto语句使用943.9使用continue99练习3-3完成Java帮助系统1013.10嵌套的循环1053.11思考与练习106第4章类、对象和方法1084.1类的基础知识1094.1.1类的基本形式1094.1.2定义类1104.2如何创建对象1144.3引用变数和赋值1144.4方法1154.5从方法返回值1184.6返回值1194.7使用参数121练习4-1创建Help类1254.8构造函式1324.9带参数的构造函式1334.10深入介绍new运算符1364.11垃圾回收与终止器136练习4-2演示垃圾回收1384.12this关键字1404.13思考与练习142第5章其他数据类型与运算符1445.1数组145练习5-1排序数组1495.2多维数组1515.3不规则数组1525.3.1三维或更多维的数组1545.3.2初始化多维数组1545.4另一种声明数组的语法1565.5数组引用赋值1565.6使用length成员158练习5-2Queue类1605.7for-each形式的循环1655.8字元串1705.8.1构造字元串1715.8.2操作字元串1725.8.3字元串数组1745.8.4字元串是不可变的1755.9使用命令行变元1765.10位运算符1785.10.1位运算符的与、或、异或和非1785.10.2位移运算符1835.10.3位运算符赋值速 记符185练习5-3ShowBits类1865.11“?”运算符1895.12思考与练习191第6章方法和类剖析1936.1控制对类成员的访问1946.2Java的访问指示符194练习6-1改进Queue类1996.3向方法传递对象2016.4返回对象2056.5方法重载2076.6重载构造函式213练习6-2重载Queue构造函式2166.7递归2196.8理解static关键字222练习6-3快速排序2266.9嵌套类和内部类2296.10可变长度变元(varargs)2336.10.1varargs基础2346.10.2重载varargs方法2376.10.3varargs和歧义2396.11思考与练习240第7章继承2427.1继承的基础知识2437.2构造函式和继承2497.3使用super调用超类构造函式2517.4使用super访问超类成员256练习7-1扩展Vehicle类2577.5创建多级层次结构2617.6何时调用构造函式2647.7超类引用和子类对象2667.8方法重写2717.9重写的方法支持多态性2747.9.1为何使用重写的方法2767.9.2在TwoDShape中应用方法重写2767.10使用抽象类2817.11使用final2867.11.1使用final防止重写2867.11.2使用final防止继承2877.11.3对数据成员使用final2877.12Object类2897.13思考与练习290第8章包和接口2918.1包2928.1.1定义包2928.1.2寻找包和CLASSPATH2938.1.3一个简短的包的示例2948.2包和成员访问2958.3理解被保护的成员2988.4导入包3018.5Java的类库位于包中3028.6接口3038.7实现接口3048.8使用接口引用308练习8-1创建伫列接口3118.9接口中的变数3178.10接口能够扩展3188.11思考与练习320第9章异常处理3219.1异常的层次结构3229.2异常处理基础3229.2.1使用try和catch323 9.2.2一个简单的异常示例3249.3未捕获异常的结果3269.4使用多个catch语句3299.5捕获子类异常3309.6嵌套try代码块3329.7抛出异常3339.8Throwable详解3369.9使用finally3389.10使用throws3409.11Java的内置异常3429.12创建异常子类344练习9-1向排序类添加异常3469.13思考与练习350第10章使用I/O35210.1Java的I/O基于流35310.2位元组流和字元流35310.3位元组流类35410.4字元流类35410.5预定义流35510.6使用位元组流35610.6.1读取控制台输入35710.6.2写入控制台输出35810.7使用位元组流读写档案35910.7.1从档案输入35910.7.2写入档案36110.8读写二进制数据363练习10-1档案比较程式36710.9随机访问档案36910.10使用Java字元流37210.10.1基于字元流的控制台输入37310.10.2使用字元流的控制台输出37610.11使用字元流的档案I/O(OK)37710.11.1使用FileWriter37710.11.2使用FileReader37910.12使用Java类型包装器转换数值字元串380练习10-2创建一个基于的帮助系统38310.13思考与练习390第11章多执行绪程式设计39111.1多执行绪基本原理39211.2Thread类和Runnable接口39211.3创建一个执行绪393练习11-1扩展Thread39911.4创建多重执行绪40211.5确定执行绪何时结束40511.6执行绪的优先权40911.7同步化41211.8使用同步化方法41211.9同步化语句41611.10使用notify()、wait()和notifyAll()的执行绪通信41811.11执行绪的挂起、继续执行和停止424练习11-2使用主执行绪42811.12思考与练习430第12章枚举、自动封包和静态导入43212.1枚举43312.2Java的枚举是类类型43612.3values()和valueOf() 方法43612.4构造函式、方法、实例变数和枚举43812.5枚举继承Enum440练习12-1计算机控制的交通指示灯44212.6类型包装器44812.7自动封包基础45012.8自动封包和方法45112.9发生在表达式中的自动封包/自动解包45212.10静态导入45412.11元数据45712.12思考与练习460第13章泛化46113.1泛化基础46213.2一个简单的泛化示例46313.3约束类型46913.4使用通配符变元47313.5约束通配符47613.6泛化方法48013.7泛化构造函式48213.8泛化接口483练习13.1创建一个泛化伫列48613.9原类型和遗留代码49013.10Erasure49313.11歧义错误49513.12一些泛化限制49613.13思考与练习498第14章applet、事件和其他议题50014.1applet基础50114.2applet层次结构50414.3一个完整的applet框架50514.4applet初始化与终止50614.5请求重绘507练习14-1一个简单的广告条applet50914.6使用状态视窗51314.7向applet传递参数51414.8Applet类51614.9委派事件模型51714.9.1事件51814.9.2事件源51814.9.3事件侦听者51814.9.4事件类(EventClass)51914.9.5事件侦听者接口51914.10使用委派事件模型52014.10.1处理滑鼠事件52014.10.2一个简单的滑鼠事件applet52114.11其他Java关键字52414.11.1transient和volatile修饰符52514.11.2instanceof52514.11.3strictfp52514.11.4assert52614.11.5native方法52614.12思考与练习527附录思考与练习答案529