中国高校课件下载中心 》 教学资源 》 大学文库

《Java面向对象程序设计》课程教学资源(书籍文献)Java语言程序设计(基础篇)原书第10版,梁勇著

文档信息
资源类别:文库
文档格式:PDF
文档页数:679
文件大小:260.28MB
团购合买:点击进入团购
内容简介
《Java面向对象程序设计》课程教学资源(书籍文献)Java语言程序设计(基础篇)原书第10版,梁勇著
刷新页面文档预览

书机科学丛计算HZ BOOKS华章教育PEARSON原书第10版语言程序设计Java基础篇戴开宇梁勇(Y.Daniel Liang)著译[美]复且大学阿姆斯特朗亚特兰大州立大学ntroduction toJava ProgrammngComprehensive Version Tenth EditionINTRODUCTIONTOJAVAPROGRAMMINGCOMPREHENSIVEVERSIONDTEORY.Daniel LiangAVA机械工业出版社ChinaMachinePress

PEARSON 原 B第10版 Java语言程序设计 ( 基础篇 ) m 梁勇 ( V. Daniel Liang 1 战开卞 美阿姆断特朗亚特、A;州 >>:A:学荇 U K大学详謂 Introduction to Java Prograrmning Comprehensive Version Tenth edition - ▲ I ■ Y. Daniel Liang 工 业 出 版 社

Java语言程序设计(基础篇)原书第10版IntroductiontoJavaProgramming ComprehensiveVersion TenthEdition本书是Java语言的经典教材,多年来畅销不衰。本书全面整合了Java8的特性,采用“基础优先,问题驱动”的教学方式,循序渐进地介绍了程序设计基础、解决问题的方法、面向对象程序设计、图形用户界面设计、异常处理、I/O和递归等内容。此外,本书还全面且深入地覆盖了一些高级主题,包括算法和数据结构、多线程、网络、国际化、高级GUI等内容。本书中文版由《Java语言程序设计基础篇》和《Java语言程序设计进阶篇》组成。基础篇对应原书的第1~18章,进阶篇对应原书的第19~33章。为满足对Web设计有浓厚兴趣的同学,本版在配套网站上增加了第34~42章的内容,以提供更多的相关信息。本书特点·基础篇介绍基础内容,进阶篇介绍高级内容,便于教师按需选择理想的教材。全面整合了Java8的特性,对全书的内容进行了修订和更新,以反映Java程序设计的最新技术发展。对面向对象程序设计进行了深入论述,包含GUI程序设计的基础和扩展。提供的大量示例中都包括了对问题求解的详细步骤,很多示例都是随着Java技术的引入不断地进行增强,这种循序渐进的讲解方式更易于学生学习。。用JavaFX取代了Swing,极大地简化了GUI编程,比Swing更易于学习。更多有趣示例和练习,激发学生兴趣。在配套网站上还为教师提供了100多道的编程练习题。作者简介梁勇(Y.DanielLiang)现为阿姆斯特朗亚特兰大州立大学计算机科学系教授。之前曾是普度大学计算机科学系副教授,并两次获得普度大学杰出研究奖。他所编写的Java教程在美国大学Java课程中采用率极高,同时他还兼任PrenticeHall Java系列丛书的编辑。他是“JavaChampion”荣誉得主,并在世界各地为在校学生和程序员做JAVA程序设计方法及技术方面的讲座。译者简介戴开宇复旦大学软件学院教师,工程硕士导师,中国计算机学会会员。博士毕业于上海交通大学计算机应用专业,2011~2012年在美国佛罗里达大学作访问学者。承担多门本科专业课程、通识教育课程以及工程硕士课程,这些课程被评为校精品课程,上海市重点建设课程,IBM-教育部精品课程等。计算机程序设04ISBN-111-50690-4-PEARSON华章同站:www.hzbook.com投热线:(010)88379604同上购书:www.china-pub.com客服热线:(010)883789918836106611115069041>91787购书热线:(010)683262948837964968995259数字阅读:www.hzmedia.com.cn定价:85.00元计锡械

Java语言程序设计( 基础篇 ) 原书第io版 Introduction to Java Programming Comprehensive Version Temh Edition 本书是Java语言的经典教材,多年来畅销不衰- 本书全面整合了Java 8的特性,采用 ‘‘基础优先,问 题驱动” 的教学方式,循序渐进地介绍了程序设计基础、解决问题的方法、面向对象程序设计、图形用户 界面设计、异常处理、I/O和递归等内容。此外,本书还全面且深入地覆盖了一些高级主题,包括算法和数 据结构、多线程、网络、国际化、高级GUI等内容。 本书中文版由《Java语言程序设计基础篇》和《Java语言程序设计进阶篇》组成。基础篇对应原书 的第1 18章,进阶篇对应原书的第19 33章。为满足对Web设计有浓厚兴趣的同学,本版在配套网站上 增加了第34 - 42章的内容,以提供更多的相关信息。 本书特点 基础篇介绍基础内容,进阶篇介绍高级内容,便于教师按需选择理想的教材 * 全面整合了Java 8的特性,对全书的内容进行了修订和更新,以反映Java程序设计的最新技术发展 对面向对象程序设计进行了深入论述,包含GUI程序设计的基础和扩展 - 提供的大量示例中都包括了对问题求解的详细步骤,很多示例都是随着Java技术的引入不断地进行 增强,这种循序渐进的讲解方式更易于学生学习。 用JavaFX取代了Swing, 极大地简化了GUI编程,比Swing更易于学习。 * 更多有趣示例和练习,激发学生兴趣。在配套网站上还为教师提供了100多道的编程练习题。 作者简介 梁勇( Y. Daniel Liang ) 现为阿姆斯特朗亚特兰大州立大学计算机科学系教授. 之前曾是普度大学计 算机科学系副教授,并两次获得普度大学杰出研究奖。他所编写的Java教程在美国大学Java课程中采用率 极高,同时他还兼任Prentice Hall Java系列丛书的编辑他是 “ Java Champion” 荣誉得主,并在世界各 地为在校学生和程序员做JAVA程序设计方法及技术方面的讲座。 译者简介 戴开宇复旦大学软件学院教师,工程硕士导师,中国计算机学会会员。博士毕业于上海交通大学计算 机应用专业,2011 - 2012年在美国佛罗里达大学作访问学者。承担多门本科专业课程、通识教育课程以及 工程硕士课程,这些课程被评为校精品课程,上海市重点建设课程,旧教育部精品课程等。 lililiil PEARSON 投》热线:(010) 88379604 华 • 网站:www.hzbook.com 客服热线:(010) 88378991 88361066 网上W书:www.china-pub.com W书热线:(010) 68326294 88379649 68995259 跛字阅* : www.hzmediacom.cn 上 * 指导:计»机\桴序设计 - 50690-4

机N人从原书第10版Java语言程序设计(基础篇)梁勇(Y.Daniel Liang)戴开宇[美]4K阿姆斯特朗亚特兰大州立大学复旦大学Introduction to Java ProgrammingComprehensiveVersionTenthEditionINTRODUCTIONTOJAVAPROGRAMMINGCOMPREHEIRSIVEVERSIONDaniel Llang机械工业出版社hinaMachinePress

o ® ® ® © Java语言程序设计 ( 基础篇 ) 梁勇 (Y.Daniel Liang) 戴开宇怪 阿姆斯特朗亚特兰大州立大学 * 复旦大学谇 Introduction to Java Programming Comprehensive Version Tenth Edition V, mm ( T)gl 械 工 业 出 版 社 TCr China Machine Press

图书在版编目(CIP)数据Java语言程序设计(基础篇)(原书第10版)/(美)梁勇(Liang,Y.D.)著,戴开宇译,一北京:机械工业出版社,2015.6(计算机科学丛书)书名原文:IntroductiontoJavaProgramming,ComprehensionVersion,TenthEditionISBN978-7-111-50690-4I.J·I.架②戴I.JAVA语言-程序设计IV.TP312中国版本图书馆CIP数据核字(2015)第131479号本书版权登记号:图字:01-2014-5466Authorized translation from the English language edition, entitled Introduction to JavdProgramming,ComprehensiveVersion,Tenth Edition,978-0-13-376131-3by Y.Daniel Liang,publishedbyPearsonEducation,Inc.,Copyright2015,2013,2011.All rights reserved.No part of this book may be reproduced or transmitted in anyformorbyanymeans,electronicormechanical,includingphotocopying,recording orbyanyinformationstorageretrieval system,withoutpermissionfromPearson Education,Inc.Chinese simplified languageedition published byPearson Education Asia Ltd.,andChina MachinePress Copyright2015.本书中文简体字版由PearsonEducation(培生教育出版集团)授权机械工业出版社在中华人民共和国境内(不包括中国台湾地区和中国香港、澳门特别行政区)独家出版发行。未经出版者书面许可,不得以任何方式抄装、复制或节录本书中的任何部分。本书封底贴有PearsonEducation(培生教育出版集团)激光防伪标签,无标签者不得销售。本书是Java语言的经典教材,中文版分为基础篇和进阶篇,主要介绍程序设计基础、面向对象程序设计、GUI程序设计、数据结构和算法、高级Java程序设计等内容。本书以示例讲解解决问题的技巧,提供大量的程序清单,每章配有大量复习题和编程练习题,帮助读者掌握编程技术,并应用所学技术解决实际应用开发中遇到的问题。基础篇主要介绍基本程序设计、语法结构、面向对象程序设计、继承和多态、异常处理和文本I/O、抽象类和接口等内容。本书可作为高等院校相关专业程序设计课程的基础教材,也可作为Java语言及编程爱好者的参考资料。出版发行:机械工业出版社(北京市西城区百万庄大街22号邮政编码100037)责任校对:股虹责任编辑:李艺版次:2015年7月第1版第1次印刷印刷:三河市宏图印务有限公司印张:42.25开本:185mm×260mm1/16定价:85.00元书号:ISBN978-7-111-50690-4兄购本书,如有缺页、例页、脱页,由本社发行部调换投稿热线:(010)88379604客服热线:(010)8837899188361066购书热线:(010)683262948837964968995259读者信箱:hzjsj@hzbook.com版权所有·侵权必究封底无防伪标均为盗版本书法律顾问:北京大成律师事务所韩光/邹晓东

图书在版编目( CIP ) 数据 Java 语言程序设计( 基础篇 )( 原书第 10 版 > / ( 美 )梁勇( Liang, Y. D. ) 著,戴幵宇译 . 一北京 :机械工业出版社,2015.6 ( 计算机科学丛书) 书名原文 :Introduction to Java Programming, Comprehension Version, Tenth Edition ISBN 978-7-111-50690-4 I. J. I I. ① 梁. ② 戴. I I I. JAVA 语言 - 程序设计 IV. TP312 中国版本图书馆 CIP 数据核字( 2015 ) 第 131479 号 本书版权登记号:图字:01-2014-5466 Authorized translation from the English language edition, entitled Introduction to Java Programming, Comprehensive Version, Tenth Edition, 978 _0 _13-376131-3 by Y. Daniel Liang, published by Pearson Education, Inc” Copyright © 2015, 2013, 2011. All rights reserved. No part of this book may be reproduced or transmitted in any form or by any means, electronic or mechanical, including photocopying, recording or by any information storage retrieval system, without permission from Pearson Education, Inc. Chinese simplified language edition published by Pearson Education Asia Ltd., and China Machine Press Copyright O 2015. 本书中文简体字版由 Pearson Education ( 培生教育出版集团)授权机械工业出版社在中华人民共 和国境内(不包括中国台湾地区和中国香港、澳门特别行政区)独家出版发行。未经出版者书面许可, 不得以任何方式抄袭、复制或节录本书中的任何部分。 本书封底貼有 Pearson Education ( 培生教育出版集团)激光防伪标签,无标签者不得销售。 本书是 Java 语言的经典教材 ,中文版分为基础篇和进阶篇,主要介绍程序设计基础、面向对象程 序设计、GUI 程序设计、数据结构和算法、髙级 Java 程序设计等内容。本书以示例讲解解决问题的技 巧,提供大量的程序清单. 每章配有大置复习题和编程练习题,帮助读者掌握编程技术,并应用所学技 术解决实际应用幵发中遇到的问题。 基础篇主要介绍基本程序设计、语法结构、面向对象程序设计、继承和多态、异常处理和文本 1/0、油象类和接口等内容。 本书可作为高等院校相关专业程序设计课程的基础教材,也可作为 Java 语言及编程爱好者的参考 资料。 出版发行:机械IL业出版社(北京市西城区百万庄大街 22 号 邮政鎢码 100037 ) 责任编辑:李艺 贵任校对:殷虹 印 刷: 三河市宏图印务有限公司 版 次: 2015年 7 月第 1版第 1 次印刷 幵 本: 185mm x 260mm 1/16 印 张: 42.25 书 号: ISBN 978-7-111-50690-4 定 价: 85.00 元 凡购本书,如有缺頁、倒買、JK.1C , 由本社发行部调換 客服热线:( 010 ) 88378991 88361066 投稿热战:( 010 ) 88379604 购书热战:(010)68326294 88379649 68995259 读者信箱:hzjsj@hzbook.com 版权所有 ft权必究 封底无防伪标均为廑版 本丰法律潁问:北京大成律师事务所棘光 / 邹晓东

出版者的话Introduction to Java Programming, Comprehension Version, Tenth Edition文艺复兴以来,源远流长的科学精神和逐步形成的学术规范,使西方国家在自然科学的各个领域取得了垄断性的优势:也正是这样的优势,使美国在信息技术发展的六十多年间名家辈出、独领风骚。在商业化的进程中,美国的产业界与教育界越来越紧密地结合,计算机学科中的许多泰山北斗同时身处科研和教学的最前线,由此而产生的经典科学著作,不仅壁划了研究的范畴,还揭示了学术的源变,既遵循学术规范,文自有学者个性,其价值并不会因年月的流逝而减退。近年,在全球信息化大潮的推动下,我国的计算机产业发展迅猛,对专业人才的需求日益迫切。这对计算机教育界和出版界都既是机遇,也是挑战,而专业教材的建设在教育战略上显得举足轻重。在我国信息技术发展时间较短的现状下,美国等发达国家在其计算机科学发展的儿十年间积淀和发展的经典教材仍有许多值得借鉴之处。因此,引进一批国外优秀计算机教材将对我国计算机教育事业的发展起到积极的推动作用,也是与世界接轨、建设真正的世界一流大学的必由之路。机械工业出版社华章公司较早意识到“出版要为教育服务”。自1998年开始,我们就将工作重点放在了避选、移译国外优秀教材上。经过多年的不懈努力,我们与Pearson,McGraw-Hill,Elsevier,MIT,JohnWiley&Sons,Cengage等世界著名出版公司建立了良好的合作关系,从他们现有的数百种教材中甄选出AndrewS.Tanenbaum,BjarneStroustrup,BrainW.Kernighan,DennisRitchie,JimGray,AfredV.Aho,JohnE.Hopcroft,JeffreyDUllman,AbrahamSilberschatz,WilliamStallings,DonaldE.Knuth,JohnL.Hennessy,LarryLPeterson等大师名家的一批经典作品,以“计算机科学丛书”为总称出版,供读者学习、研究及珍藏。大理石纹理的封面,也正体现了这套丛书的品位和格调。“计算机科学丛书”的出版工作得到了国内外学者的鼎力相助,国内的专家不仅提供了中肯的选题指导,还不辞劳苦地担任了翻译和审校的工作,而原书的作者也相当关注其作品在中国的传播,有的还专门为其书的中译本作序。迄今,“计算机科学丛书”已经出版了近两百个品种,这些书籍在读者中树立了良好的口碑,并被许多高校采用为正式教材和参考书籍。其影印版“经典原版书库”作为娣妹篇也被越来越多实施双语教学的学校所采用。权威的作者、经典的教材、一流的译者、严格的审校、精细的编辑,这些因素使我们的图书有了质量的保证。随着计算机科学与技术专业学科建设的不断完善和教材改革的逐渐深化,教育界对国外计算机教材的需求和应用都将步入一个新的阶段,我们的自标是尽善尽美,而反馈的意见正是我们达到这一终极目标的重要帮助。华章公司欢迎老师和读者对我们的工作提出建议或给予指正,我们的联系方法如下:华章网站:www.hzbook.com电子邮件:hzjsj@hzbook.com联系电话:(010)88379604HZ.BOOKS华章教育联系地址:北京市西城区百万庄南街1号华章科技图书出版中心邮政编码:100037

I 出版者的话 I Introduction to Java Programming, Comprehension Version,Tenth 文艺复兴以来,源远流长的科学精神和逐步形成的学术规范,使西方国家在自然科学的 各个领域取得了垄断性的优势,也正是这样的优势,使美国在信息技术发展的六十多年间名 家辈出、 独领风骚。在商业化的进程中,美国的产业界与教育界越来越紧密地结合,计算机 学科中的许多泰山北斗同时身处科研和教学的最前线,由此而产生的经典科学著作,不仅擘 划了研究的范畴,还掲示了学术的源变,既遵循学术规范,又自有学者个性,其价值并不会 因年月的流逝而减退。 近年,在全球信息化大潮的推动下,我国的计算机产业发展迅猛,对专业人才的需求日 益迫切。这对计算机教育界和出版界都既是机遇,也是挑战《 而专业教材的建设在教育战略 上显得举足轻重。在我国信息技术发展时间较短的现状下,美国等发达国家在其计算机科学 发展的几十年间积淀和发展的经典教材仍有许多值得借鉴之处。因此,引进一批国外优秀计 算机教材将对我国计算机教育事业的发展起到积极的推动作用,也是与世界接轨、 建设真正 的世界一流大学的必由之路。 机械工业出版社华章公司较早意识到 “出版要为教育服务”。自 1998 年开始,我们 就将工作重点放在了遴选、 移译国外优秀教材上。经过多年的不懈努力,我们与 Pearson, McGraw - Hill, Elsevier, MIT, John Wiley & Sons, Cengage 等世界著名出版公司建立了良 好的合作关系,从他们现有的数百种教材中甄选出 Andrew S.Tanenbaum,Bjame Stroustrup, Brain W.Kernighan, Dennis Ritchie, Jim Gray, Afred V.Aho, John E.Hopcroft, Jeffrey D. Ullman,Abraham Silberschatz,William Stallings,Donald E.Knuth,John L.Hennessy,Larry L. Peterson 等大师名家的一批经典作品,以 “计算机科学丛书” 为总称出版,供读者学习、 研 究及珍藏。大理石纹理的封面,也正体现了这套丛书的品位和格调。 “计算机科学丛书” 的出版工作得到了国内外学者的鼎力相助,国内的专家不仅提供了 中肯的选题指导,还不辞劳苦地担任了翻译和审校的工作《 而原书的作者也相当关注其作品 在中国的传播,有的还专门为其书的中译本作序。迄今,“计算机科学丛书” 已经出版了近 两百个品种,这些书籍在读者中树立了良好的口碑,并被许多髙校采用为正式教材和参考书 籍。其影印版 “经典原版书库” 作为姊妹篇也被越来越多实施双语教学的学校所采用。 权威的作者、 经典的教材、一流的译者、 严格的审校、 精细的编辑,这些因素使我们的 图书有了质量的保证。随着计算机科学与技术专业学科建设的不断完善和教材改革的逐渐 深化,教育界对国外计算机教材的需求和应用都将步入一个新的阶段,我们的目标是尽善尽 美,而反馈的意见正是我们达到这一终极目标的重要帮助。华章公司欢迎老师和读者对我们 的工作提出建议或给予指正,我们的联系方法如下: 华章网站: www.hzbook.com 电子邮件: hzjsj@hzbook.com 联系电话:(010 )88379604 联系地址: 北京市西城区百万庄南街 1 号 邮政编码 : 100037 华章教离 华幸科技图书出版中心

中文版序Introduction to Java Programming, Comprehension Version, Tenth EditionWelcome to the Chinese translation of Introduction to Java Programming Tenth Edition.The first edition of the English version was published in 1998. Since then ten editions of thebook have been published in the last seventeen years.Each new edition substantially improvedthe book in contents,presentation, organization, examples, and exercises.This book is nowthe#l selling computer science textbook in theUS.Hundreds and thousands of students around theworldhavelearnedprogrammingandproblem solvingusing this book.I thank Dr.Kaiyu Dai of Fudan University for translating this latest edition.It is a greathonor to reconnect with Fudan through this book.I personally benefited from teachings ofmany great professors at Fudan. Professor Meng Bin made Calculus easy with many insightfulexamples.ProfessorLiu Guangqi introduced multidimensional mathematic modeling in theLinear Algebra class.Professor Zhang Aizhu laid a solid mathematical foundation for computerscience in the discrete mathematics class.Professor Xia Kuanli paid a great attention to smalldetails in the PASCAL course.Professor Shi Bole showed many interesting sort algorithms inthe data structures course.Professor Zhu Hong required an English text for the algorithm designand analysis course.Professor Lou Rongsheng taught the database course and later supervisedmymaster's thesis.My study at Fudan and teaching in the US prepared me to write the textbook.The Chineseteaching emphasizes on the fundamental concepts and basic skills, which is exactly I used towrite this book.The book is fundamentals first by introducing basic programming conceptsand techniques before designing custom classes.The fundamental-first approach is now widelyadopted by the universities in theUS.With the excellent translation from Dr.Dai, I hope morestudents will benefitfrom this book and excel in programming and problem solving

I 中文版序I Welcome to the Chinese translation of Introduction to Java Programming Tenth Edition. The first edition of the English version was published in 1998. Since then ten editions of the book have been published in the last seventeen years. Each new edition substantially improved the book in contents, presentation, organization, examples, and exercises. This book is now the #1 selling computer science textbook in the US. Hundreds and thousands of students around the world have learned programming and problem solving using this book. I thank Dr. Kaiyu Dai of Fudan University for translating this latest edition. It is a great honor to reconnect with Fudan through this book. I personally benefited from teachings of many great professors at Fudan. Professor Meng Bin made Calculus easy with many insightful examples. Professor Liu Guangqi introduced multidimensional mathematic modeling in the Linear Algebra class. Professor Zhang Aizhu laid a solid mathematical foundation for computer science in the discrete mathematics class. Professor Xia Kuanli paid a great attention to small details in the PASCAL course. Professor Shi Bole showed many interesting sort algorithms in the data structures course. Professor Zhu Hong required an English text for the algorithm design and analysis course. Professor Lou Rongsheng taught the database course and later supervised my master’s thesis. My study at Fudan and teaching in the US prepared me to write the textbook. The Chinese teaching emphasizes on the fundamental concepts and basic skills, which is exactly I used to write this book. The book is fundamentals first by introducing basic programming concepts and techniques before designing custom classes. The fundamental-first approach is now widely adopted by the universities in the US. With the excellent translation from Dr. Dai, I hope more students will benefit from this book and excel in programming and problem solving

V欢迎阅读本书第10版的中文版。本书英文版的第1版于1998年出版。自那之后的17年中,本书共出版了10个版本。每个新的版本都在内容、表述、组织、示例以及练习题等方面进行了大量的改进。本书目前在美国计算机科学类教材中销量排名第一。全世界无数的学生通过本书学习程序设计以及问题求解。感谢复日大学的戴开宇博士翻译了这一最新版本。非常荣幸通过这本书和复日大学重建联系,我本人曾经受益于复大学的许多杰出教授:孟斌教授采用许多富有洞察力的示例将微积分变得清晰易懂:刘光奇教授在线性代数课堂上介绍了多维度数学建模:张需珠教授的离散数学课程为计算机科学的学习打下了坚实的数学基础:夏宽理教授在Pascal课程中对许多小的细节给予了极大的关注;施伯乐教授在数据结构课程中演示了许多有趣的排序算法;朱洪教授在算法设计和分析课程中使用了英文教材:楼荣生教授讲授了数据库课程,并且指导了我的硕士论文。我在复日大学的学习经历以及美国的授课经验为撰写本书奠定了基础。中国的教学重视基本概念和基础技能,这也是我写这本书所采用的方法。本书采用基础为先的方法,在介绍设计自定义类之前首先介绍了基本的程序设计概念和方法。目前,基础为先的方法也被美国的大学广泛采用。我希望通过戴博士的优秀翻译,让更多的学生从中受益,并在程序设计和问题求解方面出类拔萃。梁勇y.daniel.liang@gmail.comwww.cs.armstrong.edu/liang

V 欢迎阅读本书第 10 版的中文版。本书英文版的第 1 版于 1998 年出版。自那之后的 17 年中,本书共出版了 10 个版本。每个新的版本都在内容、表述、组织、示例以及练习题等 方面进行了大量的改进。本书目前在美国计算机科学类教材中销量排名第一。全世界无数的 学生通过本书学习程序设计以及问题求解。 感谢复旦大学的戴开宇博士翻译了这一最新版本。非常荣幸通过这本书和复旦大学重建 联系,我本人曾经受益于复旦大学的许多杰出教授:孟斌教授采用许多富有洞察力的示例将 微积分变得清晰易懂;刘光奇教授在线性代数课堂上介绍了多维度数学建模;张霭珠教授的 离散数学课程为计算机科学的学习打下了坚实的数学基础;夏宽理教授在 Pascal 课程中对许 多小的细节给予了极大的关注;施伯乐教授在数据结构课程中演示了许多有趣的排序算法; 朱洪教授在算法设计和分析课程中使用了英文教材;楼荣生教授讲授了数据库课程,并且指 导了我的硕士论文。 我在复旦大学的学习经历以及美国的授课经验为撰写本书莫定了基础。中国的教学重视 基本概念和基础技能,这也是我写这本书所采用的方法。本书采用基础为先的方法,在介绍 设计自定义类之前首先介绍了基本的程序设计概念和方法。目前,基础为先的方法也被美国 的大学广泛采用。我希望通过戴博士的优秀翻译,让更多的学生从中受益,并在程序设计和 问题求解方面出类拔萃。 梁勇 y.daniel.liang@gmail.com www.cs.armstrong.edu/liang

译者序Introduction to Java Programming,Comprehension Version, Tenth EditionJava是一门伟大的程序设计语言,同时,它还是基于Java语言从联入式开发到企业级开发的平台。在风起云涌的计算机技术发展历程中,Java的身影随处可见,而且生命力极其强大。1995年,JavaApplet使得Web网页可以表现精彩和互动的多媒体内容,促进了Web的蓬勃发展。之后随看web的发展,应用web成为大型应用开发的主流方式,Java凭借其“一次编译,到处运行”的特性很好地支持了互联网应用所要求的跨平台能力,成为服务器端开发的主流语言。JavaEE至今依然是最重要的企业开发服务器端平台。2004年再次产生了对Web客户端体验的强烈需求,促使富因特网应用技术广泛流行,从JavaWebStart到现在的JavaFx,都是重要的富因特网应用技术。现在我们进入了移动互联网时代,而Java依然是当之无愧的主角。从第一阶段移动互联网中的J2ME,到目前移动操作系统中全球占据份额最大的Android系统上的App开发,都采用的是Java语言和平台。云计算、大数据、物联网、可穿戴设备等技术的应用,都需要可以跨平台、跨设备的分布式计算环境,我们依然会看到Java语言在其中的关键作用。除此之外,Java还是一门非常优秀的教学语言。它是一门经典的面向对象编程语言,拥有优雅和尽量简明的语法以及丰富的实用类库,让编程人员可以尽可能地将精力集中在业务领域的问题求解上。许多开源项目和科研中的原型系统都是采用Java实现的。课堂教学采用的语言同时在工业界和学术领域具有如此广泛的应用,对手学生今后的科研和工作都有直接帮助。我曾经对美国计算机专业排名靠前的儿十所大学的相关课程进行调研,这些著名大学的编程课程中绝大部分选用了Java语言进行教学。在多年前机械工业出版社举办的一次教学研讨会上,我有幸认识原书的作者梁勇(YDanielLiang)教授并进行了交流。那次会议之后我开始在主讲的程序设计课程中采用本书英文版作为教材,在同行和学生中得到了良好反响。作为复且校友,梁教授对中国学生的情况非常了解,书中没有过于嗨的词汇和表达,所以本英文教材非常适合中国学生的英文基础。更重要的是,本书知识点全面,体系结构清晰,重点突出、文字准确、内容组织循序渐进,并有大量精选的示例和配套素材,比如精心设计的大量练习题,甚至在配套网站中有支持教学的大量动画演示。本书采用基础优先的方式,从编程基础开始,逐步引入面向对象思想,最后介绍应用框架,这样很适合程序设计人门的学生。另外,强调面向问题求解的教学方法是本书特色,这也是我在课堂上一直遵循的教学方法。通过生动实用的例子来引导学生学习程序设计课程,避免了枯燥的语法学习,让学生学以致用,并且可以举一反三。程序设计课堂最重要的是要培养学生的计算思维,这对学生综合素质的培养以及其他知识的学习,都是很有神益的。掌握了程序设计的思维,可以很方便地学习和使用其他编程语言。该版本的另一特色是对最新Java语言特色的跟进,即基于Java最新版本8进行介绍。这是Java语言变动非常大的一个版本,比如对JavaFX的全面引入以及并行计算的支持等,都反映了最新的计算机技术和应用特点。相应地,教材也进行了大幅更新。我很荣幸成为本书第10版的译者,让中国的读者可以通过这一最新版本的中文版方便地学习程序设计相关知识

译 者 序I Introduction to Java Programming, Comprehension Version,Tenth Edition Java 是一门伟大的程序设计语言,同时,它还是基于 Java 语言从嵌入式开发到企业级 开发的平台。在风起云涌的计算机技术发展历程中,Java 的身影随处可见,而且生命力极其 强大。1995 年,Java Applet 使得 Web 网页可以表现精彩和互动的多媒体内容,促进了 Web 的蓬勃发展。之后随着 Web 的发展,应用 Web 成为大型应用开发的主流方式,Java 凭借其 “一次编译,到处运行” 的特性很好地支持了互联网应用所要求的跨平台能力,成为服务器 端开发的主流语言。Java EE 至今依然是最重要的企业开发服务器端平台。2004 年再次产生 了对 Web 客户端体验的强烈需求,促使富因特网应用技术广泛流行,从 Java Web Start 到现 在的 JavaFX, 都是重要的富因特网应用技术。现在我们进入了移动互联网时代,而 Java 依 然是当之无愧的主角。从第一阶段移动互联网中的 J2ME,到目前移动操作系统中全球占据 份额最大的 Android 系统上的 App 开发,都采用的是 Java 语言和平台。云计算、大数据、 物联网、可穿戴设备等技术的应用,都需要可以跨平台、跨设备的分布式计算环境,我们依 然会看到 Java 语言在其中的关键作用。除此之外,Java 还是一门非常优秀的教学语言。它 是一门经典的面向对象编程语言,拥 _优雅和尽量简明的语法以及丰富的实用类库,让编程 人员可以尽可能地将精力集中在业务领域的问题求解上。许多开源项目和科研中的原型系统 都是采用 Java 实现的。课堂教学采用的语言同时在工业界和学术领域具有如此广泛的应用, 对于学生今后的科研和工作都有直接帮助。我曾经对美国计算机专业排名靠前的几十所大学 的相关课程进行调研,这些著名大学的编程课程中绝大部分选用了 Java 语言进行教学。 在多年前机械工业出版社举办的一次教学研讨会上,我有幸认识了原书的作者梁勇(Y. Daniel Liang) 教授并进行了交流。那次会议之后我开始在主讲的程序设计课程中采用本书 英文版作为教材,在同行和学生中得到了良好反响。作为复旦校友,梁教授对中国学生的情 况非常了解,书中没有过于晦涩的词汇和表达,所以本英文教材非常适合中国学生的英文基 础。更重要的是,本书知识点全面,体系结构清晰,重点突出、文字准确,内容组织循序渐 进,并有大量精选的示例和配套素材,比如精心设计的大量练习题,甚至在配套网站中有支 持教学的大量动画演示。本书采用基础优先的方式,从编程基础开始,逐步引人面向对象思 想,最后介绍应用框架,这样很适合程序设计人门的学生。另外,强调面向问题求解的教学 方法是本书特色,这也是我在课堂上一直遵循的教学方法。通过生动实用的例子来引导学 生学习程序设计课程,避免了枯燥的语法学习,让学生学以致用,并且可以举一反三。程 序设计课堂最重要的是要培养学生的计算思维,这对学生综合素质的培养以及其他知识的 学习,都是很有裨益的。掌握了程序设计的思维,可以很方便地学习和使用其他编程语言。 该版本的另一特色是对最新 Java 语言特色的跟进,即基于 Java 最新版本 8 进行介绍。这 是 Java 语言变动非常大的一个版本,比如对 JavaFX 的全面引入以及并行计算的支持等,都 反映了最新的计算机技术和应用特点。相应地,教材也进行了大幅更新。我很荣幸成为本 书第 10 版的译者,让中国的读者可以通过这一最新版本的中文版方便地学习程序设计相关 知识

VII在本书的翻译过程中,我得到了原书作者梁勇教授的大力支持。非常感谢他不仅对我邮件中的一些问题进行快速回复和详细解答,还拨写了中文版序,其一丝不苟的学术精神让人感动。感谢机械工业出版社的朱劫编辑,她在本书的整个翻译过程中提供了许多帮助。感谢李艺编辑等其他出版社工作人员以及本书前一版的译者,本书的出版也得益于他们的工作。最后要感谢我的家人在翻译过程中给予的支持和鼓励。由于经验不足和水平有限,书中一定会存在许多间题,敬请得到大家的指正。你们善意的指正,对我和阅读本书的许多读者是有益的。戴开宇2015年4月

VII 在本书的翻译过程中,我得到了原书作者梁勇教授的大力支持。非常感谢他不仅对我邮 件中的一些问题进行快速回复和详细解答,还拨冗写了中文版序,其一丝不苟的学术精神让 人感动。感谢机械工业出版社的朱劼编辑,她在本书的整个翻译过程中提供了许多帮助。感 谢李艺编辑等其他出版社工作人员以及本书前一版的译者,本书的出版也得益于他们的工 作。最后要感谢我的家人在翻译过程中给予的支持和鼓励。由于经验不足和水平有限,书中 一定会存在许多问题,敬请得到大家的指正。你们善意的指正,对我和阅读本书的许多读者 是有益的。 戴开宇 2015 年 4 月

前言Introduction to Java Programming, Comprehension Version, Tenth Edition许多读者就本书之前的版本给出了很多反馈。这些评论和建议极大地改进了本书。这一版从表述、组织、示例、练习题以及附录方面都进行了极大的增强,包括:·用JavaFX取代了Swing。JavaFX是一个用于开发JavaGUI程序的新框架,它极大地简化了GUI程序设计,比Swing更易于学习。。在GUI程序设计之前介绍异常处理、抽象类和接口,若教师选择不教授GUI的内容,可以直接跳过第14~16章。。在第4章便开始介绍对象和字符题串,从而使得学生可以较早地使用对象和字符串来开发有趣的程序。。包含更多新的有趣示例和练习题,用于激发学生兴趣。在配套网站(wwW.Cs.armstrong.edu/liang/intro1Oe/或www.pearsonhighered.com/liang)上还为教师提供了100多道编程练习题。本书采用基础优先的方法,在设计自定义类之前,首先介绍基本的程序设计概念和技术。选择语句、循环、方法和数组这样的基本概念和技术是程序设计的基础,它们为学生进一步学习面向对象程序设计和高级Java程序设计做好准备。本书以问题驱动的方式来教授程序设计,将重点放在问题的解决而不是语法上。我们通过使用在各种应用情景中引发思考的问题,使得程序设计的介绍也变得更加有趣。前面章节的主线放在问题的解决上,引人合适的语法和库以支持编写解决问题的程序。为了支持以问题驱动的方式来教授程序设计,本书提供了大量不同难度的问题来激发学生的积极性。为了吸引各个专业的学生来学习,这些问题涉及很多应用领域,包括数学、科学、商业、金融、游戏、动画以及多媒体等。本书将程序设计、数据结构和算法无缝集成在一起,采用一种实用性的方式来教授数据结构。首先介绍如何使用各种数据结构来开发高效的算法,然后演示如何实现这些数据结构。通过实现,学生获得关于数据结构效率,以及如何和何时使用某种数据结构的深人理解。最后,我们设计和实现了针对树和图的自定义数据结构。本书广泛应用于全球各大学的程序设计入门、数据结构和算法课程中。完全版?包括程序设计基础、面向对象程序设计、GUI程序设计、数据结构、算法、并行、网络、数据库和Web程序设计。这个版本旨在把学生培养成精通Java的程序员。基础篇可用于程序设计的第一门课程(通常称为CS1)。基础篇包含完全版的前18章内容,前13章适合准备AP计算机科学考试(APComputerScienceExam)的人员使用。教授编程的最好途径是通过示例,而学习编程的唯一途径是通过动手练习。本书通过示例对基本概念进行了解释,提供了大量不同难度的练习题供学生进行实践。在我们的程序设计课程中,每次课后都布置了编程练习。?本书中文版将完全版分为基础篇和进阶篇出版,基础篇对应原书第1~18章,进阶篇对应原书第1933章,您手中的这一本是基础篇。一一编辑注

I 前 言 I I Introduction to Java Programming, Comprehension Version,Tenth Edition 许多读者就本书之前的版本给出了很多反馈。这些评论和建议极大地改进了本书。这一 版从表述、组织、示例、练习题以及附录方面都进行了极大的增强,包括: 用 JavaFX 取代了 Swing。JavaFX 是一个用于开发 JaVa GUI 程序的新框架,它极大 地简化了 GUI 程序设计,比 Swing 更易于学习。 在 GUI 程序设计之前介绍异常处理、抽象类和接口,若教师选择不教授 GUI 的内 容,可以直接跳过第 14 丨6章。 在第 4 章便开始介绍对象和字符题串,从而使得学生可以较早地使用对象和字符串 来开发有趣的程序。 包含更多新的有趣示例和练习题 ,用于激发学生兴趣。在配套网站(www.es. armstrong.edu/liang/introlOe/ 或 www.pearsonhighered.com/liang ) 上还为教师提供了 100 多道编程练习题。 本书采用基础优先的方法,在设计自定义类之前,首先介绍基本的程序设计概念和技 术。选择语句、循环、方法和数组这样的基本概念和技术是程序设计的基础,它们为学生进 一步学习面向对象程序设计和高级 java 程序设计做好准备。 本书以问题驱动的方式来教授程序设计,将重点放在问题的解决而不是语法上。我们通 过使用在各种应用情景中引发思 _考的问题,使得程序设计的介绍也变得更加有趣。前面章节 的主线放在问题的解决上,引人合适的语法和库以支持编写解决问题的程序。为了支持以问 题驱动的方式来教授程序设计,本书提供了大量不同难度的问题来激发学生的积极性。为了 吸引各个专业的学生来学习,这些问题涉及很多应用领域,包括数学、科学、商业、金融、 游戏、动画以及多媒体等。 本书将程序设计、数据结构和算法无缝集成在一起,采用一种实用性的方式来教授数据 结构。首先介绍如何使用各种数据结构来开发高效的算法,然后演示如何实现这些数据结 构。通过实现,学生获得关于数据结构效率,以及如何和何时使用某种数据结构的深人理 解。最后,我们设计和实现了针对树和图的自定义数据结构。 本书广泛应用于全球各大学的程序设计人门、数据结构和算法课程中。完全版e包括程 序设计基础、面向对象程序设计、GUI 程序设计、数据结构、算法、并行、网络、数据库和 Web 程序设计。这个版本旨在把学生培养成精通 Java 的程序员。基础篇可用于程序设计的 第一门课程(通常称为 CS1 )。基础篇包含完全版的前 18 章内容,前 13 章适合准备 AP 计 算机科学考试(AP Computer Science Exam) 的人员使用。 教授编程的最好途径是通过示例,而学习编程的唯一途径是通过动手练习。本书通过示 例对基本概念进行了解释,提供了大量不同难度的练习题供学生进行实践。在我们的程序设 计课程中,每次课后都布置了编程练习。 © 本书中文版将完全版分为基础篇和进阶篇出版. 基础篇对应原书第 1 丨8 章. 进阶篇对应原书第丨9 33 章. 您手中的这一本是基础篇。— 编辑注

刷新页面下载完整文档
VIP每日下载上限内不扣除下载券和下载次数;
按次数下载不扣除下载券;
注册用户24小时内重复下载只扣除一次;
顺序:VIP每日次数-->可用次数-->下载券;
相关文档