本书是《Java程序设计》的第二版。它从Java语言的基本特点入手,全面介绍了Java语言的基本概念和编程方法,并深入介绍了Java的高级特性。内容基本覆盖了Java的实用技术,是进一步使用Java进行技术开发的基础。
本书内容详尽,实例丰富,在每章最后均列出了若干习题,以方便教学。本书适合作为高等学校教材,也可作为专业人员的参考书。
网站首页 软件下载 游戏下载 翻译软件 电子书下载 电影下载 电视剧下载 教程攻略
书名 | Java程序设计/新世纪计算机基础教育丛书 |
分类 | |
作者 | 辛运帏//饶一梅//马素霞 |
出版社 | 清华大学出版社 |
下载 | ![]() |
简介 | 编辑推荐 本书是《Java程序设计》的第二版。它从Java语言的基本特点入手,全面介绍了Java语言的基本概念和编程方法,并深入介绍了Java的高级特性。内容基本覆盖了Java的实用技术,是进一步使用Java进行技术开发的基础。 本书内容详尽,实例丰富,在每章最后均列出了若干习题,以方便教学。本书适合作为高等学校教材,也可作为专业人员的参考书。 内容推荐 本书是《Java程序设计》的第二版。它从Java语言的基本特点入手,全面介绍了Java语言的基本概念和编程方法,并深入介绍了Java的高级特性。本书共分为12章,涉及Java中的基本语法、数据类型、类、异常、界面设计、小应用程序、I/O数据流、线程及网络功能等内容。这些内容基本覆盖了Java的实用技术,是进一步使用Java进行技术开发的基础。 本书内容详尽,实例丰富,在每章最后均列出了若干习题,以方便教学。本书适合作为高等学校教材,也可作为专业人员的参考书。 目录 概述 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 序言 现代科学技术的飞速发展,改变了世界,也改变了人类的生活。作为新世纪的大学生,应当站在时代发展的前列,掌握现代科学技术知识,调整自己的知识结构和能力结构,以适应社会发展的要求。新世纪需要具有丰富的现代科学知识,能够独立解决面临的任务,充满活力,有创新意识的新型人才。掌握计算机知识和应用,无疑是培养新型人才的一个重要环节。计算机技术已深入到人类生活的各个角落,与其他学科紧密结合,成为推动各学科飞速发展的有力的催化剂。无论学什么专业的学生,都必须具备计算机的基础知识和应用能力。计算机既是现代科学技术的结晶,又是大众化的工具。学习计算机知识,不仅能够掌握有关的知识,而且能培养人们的信息素养。它是高等学校全面素质教育中极为重要的一部分。 高校计算机基础教育应当遵循的理念是: 面向应用需要;采用多种模式;启发自主学习;重视实践训练;加强创新意识;树立团队精神,培养信息素养。 计算机应用人才队伍由两部分人组成:一部分是计算机专业出身的计算机专业人才,他们是计算机应用人才队伍中的骨干力量;另一部分是各行各业中应用计算机的人员。这后一部分人一般并非计算机专业毕业,他们人数众多,既熟悉自己所从事的专业,又掌握计算机的应用知识,善于用计算机作为工具解决本领域中的任务。他们是计算机应用人才队伍中的基本力量。事实上,大部分应用软件都是由非计算机专业出身的计算机应用人员研制的。他们具有的这个优势是其他人难以代替的。从这个事实可以看到在非计算机专业中深入进行计算机教育的必要性。 非计算机专业中的计算机教育,无论目的、内容、教学体系、教材、教学方法等各方面都与计算机专业有很大的不同,绝不能照搬计算机专业的模式和做法。全国高等院校计算机基础教育研究会自1984年成立以来,始终不渝地探索高校计算机基础教育的特点和规律。2004年,全国高等院校计算机基础教育研究会与清华大学出版社共同推出了《中国高等院校计算机基础教育课程体系2004》(简称CFC2004),由清华大学出版社正式出版发行。 1988年起,我们根据教学实际的需要,组织编写了《计算机基础教育丛书》,邀请有丰富教学经验的专家、学者先后编写了多种教材,由清华大学出版社出版。丛书出版后,迅速受到广大高校师生的欢迎,对高等学校的计算机基础教育起了积极的推动作用。广大读者反映这套教材定位准确,内容丰富,通俗易懂,符合大学生的特点。 1999年,根据新世纪的需要,在原有基础上组织出版了《新世纪计算机基础教育丛书》。由于内容符合需要,质量较高,被许多高校选为教材。丛书总发行量突破1000多万册,这在国内是罕见的。最近,我们又对丛书做进一步的修订,根据发展的需要,增加了新的书目和内容。本丛书有以下特点: (1) 内容新颖。根据21世纪的需要,重新确定丛书的内容,以符合计算机科学技术的发展和教学改革的要求。本丛书除保留了原丛书中经过实践考验且深受群众欢迎的优秀教材外,还编写了许多新的教材。在这些教材中反映了近年来迅速得到推广应用的一些计算机新技术,以后还将根据发展不断补充新的内容。 (2) 适合不同学校组织教学的需要。本丛书采用模块形式,提供了各种课程的教材,内容覆盖高校计算机基础教育的各个方面。既有供理工类专业用的,也有供文科和经济类专业用的;既有必修课的教材,也包括一些选修课的教材。各类学校都可以从中选择到合适的教材。 (3) 符合初学者的特点。本丛书针对初学者的特点,以应用为目的,以应用为出发点,强调实用性。本丛书的作者都是长期在第一线从事高校计算机基础教育的教师,对学生的基础、特点和认识规律有深入的研究,在教学实践中积累了丰富的经验。可以说,每一本教材都是他们长期教学经验的总结。在教材的写法上,既注意概念的严谨和清晰,又特别注意采用读者容易理解的方法阐明看似深奥难懂的问题,做到例题丰富,通俗易懂,便于自学。这一点是本丛书一个十分重要的特点。 (4) 采用多样化的形式。除了教材这一基本形式外,有些教材还配有习题解答和上机指导,并提供电子教案。 总之,本丛书的指导思想是内容新颖、概念清晰、实用性强、通俗易懂、教材配套。简单概括为:“新颖、清晰、实用、通俗、配套”。 我们经过多年实践形成的这一套行之有效的创作风格,相信会受到广大读者的欢迎。 本丛书多年来得到各方面人士的指导、支持和帮助,尤其是得到全国高等院校计算机基础教育研究会的各位专家和各高校的老师们的支持和帮助,我们在此表示由衷的感谢。 本丛书肯定有不足之处,竭诚希望得到广大读者的批评指正。 欢迎访问谭浩强网站: http: //www.tanhaoqiang.com 丛 书 主 编 全国高等院校计算机基础教育研究会会长 谭 浩 强 2005年1月1日 Java语言的学习热潮并没有因为时间的推移而消退,相反,由于计算机技术的发展所带来的新应用的出现,Java越来越流行,这种情况是以往程序设计语言在其生存周期内所不多见的。Java语言之所以这样长盛不衰,一是因为其众多的技术特点与现今的应用十分合拍,可以覆盖大部分的需求;二是因为SUN公司不断推出新的版本,完善Java自身的功能。有了这两点,Java语言成为程序员首选的程序设计开发工具就在情理之中了。 现在越来越多的高等学校计算机系开设了Java语言这门课程,国内外已经出版了较多的教材。针对Java语言的教学目的,结合国内教学的特点,我们于2001年编写了《Java程序设计》一书,并配套编写了《Java程序设计题解与上机指导》。承蒙读者的厚爱,这两本书被很多所大学选作教材。 近年来,Java语言版本不断更新,功能逐步完善,2001年编写的教材中已有的部分内容不再适用,而需要添加Java语言新版本中增加的内容,删除一些不再应用的部分。因此我们全面修订原书,推出第二版,旨在向读者更全面系统地介绍Java语言。 第二版所做的修订集中在以下几个方面。 (1) 将原来分散在第5章和第11章的内容集中起来,系统介绍了Java语言中类的概念。由于Java语言是一种严格的面向对象的语言,编写的所有代码都限定在类内完成,考虑到不熟悉这种程序设计思路的读者可能很难从面向过程的模式中转变过来,因此本书的第一版分两步向读者介绍类的内容。现在的情况已有了很大的改变。面向对象的程序设计思想已是各学校程序设计课程的主要内容,学习Java时,相信读者已有了初步的基础,所以本版中将两章合为一章。 (2) 将原来第7章、第8章及第9章中关于组件的内容合并在新版的第7章中介绍。程序界面一直是受关注的焦点,程序的功能往往蕴藏在良好的界面中,在一定程度上也反映了程序员的设计水平。Java语言在组件功能方面做了很大的改进,在早期的JDK版本中提供的Java抽象窗口工具集(abstract window toolkit,AWT)基础之上,又提供了功能更强的Swing。这部分内容在第8章中介绍。 (3) 相关章节都增加了一些例题。对于可以直接运行的代码,以“程序”标注,并在J2SDK 1.5平台下完成了调试,大部分都给出了运行的结果;不完整的代码以“例”来标注,读者可以继续完成不足的部分。习题中也增加了部分内容。 (4) 有些章节重新组织了内容,以适应新的变化。 本书从Java语言的基本特点入手,详细介绍了Java语言的基本概念和编程方法,帮助读者深入了解Java的高级特性。本书共分为12章,涉及Java中的基本语法、数据类型、类、异常、界面设计、小应用程序、I/O数据流、线程及网络功能等内容。这些内容基本覆盖了Java的大部分技术,是进一步使用Java进行技术开发的基础,愿本书能成为读者进入Java殿堂的铺路石。 作为教材,在每章的最后列出了若干习题,供读者参考。本书不仅适合Java语言的初学者使用,也可作为专业人员的参考书。 计算机技术是不断发展、不断完善的技术,Java语言也是如此。在本书出版的过程中,Java语言仍没有停止它的完善过程。本书中有些内容是以目前的版本为标准,当推出更高版本的Java时,读者应参考这些新标准。 在编写本书的过程中,得到了南开大学信息技术科学学院卢桂章教授、吴功宜教授、陈有祺教授、刘璟教授、周玉龙教授、朱耀庭教授等的亲切关怀和悉心指导。每当遇到困难,清华大学出版社焦虹编辑总是给予热心鼓励和全力支持,在此一并表示深深的感谢。我们非常感谢清华大学出版社为我们提供的这个机会,也同样感谢读者您在众多的Java参考书中选中了本书。 本书由辛运帏、饶一梅、马素霞编写,硕士生温小艳调试了大部分代码。由于作者的水平有限,书中难免有错误和不妥之处,恳请广大读者特别是同行专家们批评指正,感谢您的指导。 编者2006年6月于南开园 |
随便看 |
|
霍普软件下载网电子书栏目提供海量电子书在线免费阅读及下载。