Java程序员教程

出版时间:2010-5  出版社:电子工业出版社  作者:(美)戴特尔,(美)戴特尔 著,张君施 等译  页数:812  译者:张君施  
Tag标签:无  

前言

欢迎来到Java的世界并通过本书学习Java!Deitel&Associates公司为Prentice Hall出版社编写专业的编程语言图书和教材,向全球提供企业培训,发展hatemet业务。本书的写作过程充满乐趣。书中的内容反映了Java语言的最新变化,其编排方式适合讲授和学习这门语言。特性以下是本书的一些主要特性。采用Java Standard Edition 6。根据Java语言规范仔细审阅了手稿。全书都是面向对象的,且对OOP的处理清晰而可得。采用尽早接触类和对象的方式,将Time类、Employee类和GradeBook类案例分析的讨论贯穿在几个章节中,并逐步介绍更深层次的OOP概念。本书包含大量的GUI和图形。讲解面向对象时使用了最新的LIML(统一建模语言)版本UML2,它是建模面向对象系统的行业标准图形化语言。在第1~8章和第10章中包含了一个选读的OOD/UML2自动柜员机(ATM)案例分析,附录中包含了这个案例分析的完整代码实现。书中包含几个内容丰富的面向对象Web编程案例分析。

内容概要

   本书是专为初学Java编程的读者准备的。全书共分26章及7个附录,前3 章主要讲述计算机、Internet、Web及Java应用、类与对象等概念,后面的各章涉及控制语句、方法、数组、继承、多态、GUI 组件、图形与Java 2D、异常处理、文件与流、递归、查找与排序、数据结构、泛型、集合、applet、多媒体、多线程、网络、JDBC、servlet、JSP、格式化输出、字符串/字符及正则表达式等内容。全书讲解清晰,例子丰富而恰当,是学习Java编程的理想读本。

作者简介

保罗·戴特尔(Paul J.Deitel),哈维·戴特尔(Harvey M.Deitel),博士,是Deitel& Associaes公司的创始人,这是一家国际知名的写作编程语言图书、进行企业培训以及开展Internet业务的公司。两位作者已经出版过许多全球畅销的编程语言专业图书和教材,使数百万的全球读者得以精通Java、C++,C,C#,XML,Visual Basic,Perl,Python以及Internet和Web编程。“程序员教程”系列是为实用的编程技术而设计的,这个系列主要关注新出现的技术,包括Java,C++,.NE1、Web服务Internet,Web开发,等等。

书籍目录

第1章  概述  1.1  简介  1.2  Internet与万维网  1.3  C语言和C++的历史  1.4  Java的历史  1.5  Java的类库  1.6  典型的Java开发环境  1.7  关于Java和本书的说明  1.8  尝试运行一个Java程序  1.9  软件工程案例分析:对象技术和UML介绍  1.10  Web 2.0  1.11  软件技术  1.12  小结  1.13  Web资源第2章  Java程序简介  2.1  简介  2.2  第一个Java程序:输出一行文本  2.3  修改第一个Java程序  2.4  用printf显示文本  2.5  另一个Java程序:整数相加  2.6  算术运算  2.7  判断:相等运算符与关系运算符  2.8  (选读)软件工程案例分析:分析需求文档  2.9  小结第3章  简要介绍类和对象  3.1  简介  3.2  类、对象、方法和实例变量  3.3  声明带方法的类并实例化类的对象  3.4  声明带参数的方法  3.5  实例变量、set方法和get方法  3.6  基本类型与引用类型的比较  3.7  用构造函数初始化对象  3.8  浮点数与double类型  3.9  (选读)软件工程案例分析:确定需求文档中的类  3.10  小结第4章  控制语句(1)  4.1  简介  4.2  控制结构  4.3  if单选择语句  4.4  if…else双选择语句  4.5  while循环语句  4.6  计数器控制循环  4.7  标记控制循环  4.8  嵌套控制语句  4.9  复合赋值运算符  4.10  增量和减量运算符  4.11  基本类型  4.12  (选读)软件工程案例分析:确定类属性  4.13  小结第5章  控制语句(2)  5.1  简介  5.2  计数器控制循环的实质  5.3  for循环语句  5.4  使用for语句的例子  5.5  do…while循环语句  5.6  switch多选择语句  5.7  break与continue语句  5.8  逻辑运算符  5.9  (选读)软件工程案例分析:确定类的状态和活动  5.10  小结第6章  方法:深入探究   6.1  简介  6.2  Java中的程序模块  6.3  静态方法,静态字段和Math类  6.4  声明多参数方法  6.5  关于方法声明与使用  6.6  方法调用栈与活动记录  6.7  实参提升与强制转换  6.8  Java API包  6.9  案例分析:随机数生成  6.10  案例分析:机会游戏(引入枚举)  6.11  声明的作用域  6.12  方法重载  6.13  递归介绍  6.14  递归概念  6.15  使用递归的例子:阶乘  6.16  使用递归的例子:Fibonacci序列  6.17  递归与方法调用栈  6.18  递归与迭代的比较  6.19  (选读)软件工程案例分析:确定类操作  6.20  小结第7章  数组  7.1  简介  7.2  数组  7.3  声明与创建数组  7.4  数组使用举例  7.5  案例分析:洗牌与发牌模拟  7.6  增强for语句  7.7  将数组传入方法  7.8  案例分析:GradeBook类用数组存储成绩  7.9  多维数组  7.10  案例分析:GradeBook类使用二维数组  7.11  游长实参表  7.12  使用命令行实参  7.13  (选读)软件工程案例分析:对象间的协作  7.14  小结第8章  类与对象:深入探究  8.1  简介  8.2  Time类案例分析  8.3  控制成员访问  8.4  用this引用访问当前对象的成员  8.5  Time类案例分析:重载构造函数  8.6  默认和无实参构造函数  8.7  关于set方法和get方法  8.8  合成  8.9  枚举  8.10  内存回收与finalize方法  8.11  静态类成员  8.12  静态导入  8.13  final实例变量  8.14  软件复用性  8.15  数据抽象与封装  8.16  Time类案例分析:创建包  8.17  包访问性  8.18  (选读)软件工程案例分析:开始编程ATM系统的类  8.19  小结第9章  面向对象编程:继承  9.1  简介  9.2  超类与子类  9.3  protected成员  9.4  超类与子类的关系  9.5  子类的构造函数  9.6  继承与软件工程  9.7  Object类  9.8  小结第10章  面向对象编程:多态  10.1  简介  10.2  多态举例  10.3  演示多态行为  10.4  抽象类和方法  10.5  案例分析:使用多态的工资系统  10.6  final方法和类  10.7  案例分析:创建和使用接口  10.8  (选读)软件工程案例分析:在ATM系统中加入继承  10.9  小结第11章  GUI组件(1)  11.1  简介  11.2  基于简单GUI的输入/输出与JOptionPane  11.3  Swing组件概述  11.4  在窗口中显示文本和图形  11.5  文本段与带嵌套类的事件处理  11.6  常见的GUI事件类型与监听器接口  11.7  如何进行事件处理  11.8  JButton   11.9  维护状态的按钮  11.10  JComboBox与用于事件处理的匿名内部类  11.11  JList   11.12  多选择列表  11.13  鼠标事件处理  11.14  适配器类  11.15  用于鼠标绘制的JPanel子类  11.16  键盘事件处理  11.17  布局管理器  11.18  使用窗格管理更复杂的布局  11.19  JTextArea   11.20  小结第12章  图形与Java 2D  12.1  简介  12.2  图形环境与图形对象  12.3  颜色控制  12.4  字体控制  12.5  画线、矩形和椭圆  12.6  画弧  12.7  画多边形和折线  12.8  Java 2D API   12.9  小结第13章  异常处理  13.1  简介  13.2  异常处理概述  13.3  例子:除数为0不用异常处理  13.4  例子:处理ArithmeticException异常和InputMismatchException异常  13.5  何时使用异常处理  13.6  Java异常层次  13.7  finally块  13.8  堆栈解退  13.9  printStackTrace、getStackTrace和getMessage方法  13.10  链式异常  13.11  声明新的异常类型  13.12  前置条件和后置条件  13.13  断言  13.14  小结第14章  文件与流  14.1  简介  14.2  数据层次  14.3  文件与流  14.4  File类  14.5  顺序访问文本文件  14.6  对象序列化  14.7  其他的java.io类  14.8  用JFileChooser打开文件  14.9  小结第15章  泛型  15.1  简介  15.2  泛型方法的由来  15.3  泛型方法:实现和编译时翻译  15.4  其他的编译时翻译问题:将类型参数用做返回类型的方法  15.5  重载泛型方法  15.6  泛型类  15.7  原始类型  15.8  接收类型参数的方法中的通配符  15.9  关于泛型与继承的说明  15.10  小结  15.11  Internet和Web资源第16章  集合  16.1  简介  16.2  集合概述  16.3  Arrays类  16.4  Collection接口和Collections类  16.5  列表  16.6  集合算法  16.7  java.util包的Stack类  16.8  PriorityQueue类和Queue接口  16.9  Set  16.10  Map  16.11  Properties类  16.12  同步集合  16.13  不可修改集合  16.14  抽象实现  16.15  小结第17章  GUI组件(2)  17.1  简介  17.2  JSlider   17.3  关于窗口的更多说明  17.4  对框架使用菜单  17.5  JPopupMenu   17.6  可插入外观  17.7  JDesktopPane和JInternalFrame   17.8  JTabbedPane   17.9  布局管理器:BoxLayout和GridBagLayout   17.10  小结第18章  多线程编程  18.1  简介  18.2  线程状态:线程的生命周期  18.3  线程优先级与线程调度  18.4  创建并执行线程  18.5  线程同步  18.6  没有同步的生产者/消费者关系  18.7  生产者/消费者关系:ArrayBlockingQueue  18.8  同步的生产者/消费者关系  18.9  生产者/消费者关系:有界缓冲区  18.10  生产者/消费者关系:Lock和Condition接口  18.11  GUI的多线程  18.12  java.util.concurrent中的其他类和接口  18.13  小结第19章  网络编程  19.1  简介  19.2  操作URL  19.3  读取Web服务器上的文件  19.4  用流套接字建立简单的服务器  19.5  用流套接字建立简单的客户端  19.6  流套接字连接与客户/服务器交互  19.7  无连接客户/服务器交互与数据报  19.8  使用多线程服务器的客户/服务器一字棋游戏  19.9  安全与网络  19.10  案例分析:DeitelMessenger服务器与客户端  19.11  小结第20章  用JDBC访问数据库  20.1  简介  20.2  关系数据库  20.3  关系数据库概述:books数据库  20.4  SQL   20.5  MySQL和MySQL Connector/J的安装简介  20.6  设置MySQL用户账户简介  20.7  在MySQL中创建books数据库  20.8  用JDBC操作数据库  20.9  RowSet接口  20.10  Java DB/Apache Derby  20.11  PreparedStatement接口  20.12  存储过程  20.13  事务处理  20.14  小结  20.15  Web资源第21章  JavaServer Faces与Web程序  21.1  简介  21.2  简单HTTP事务  21.3  多层程序体系结构  21.4  Java的Web技术  21.5  在Netbeans中创建并运行简单的程序  21.6  JSF组件  21.7  会话跟踪  21.8  小结第22章  启用Ajax的JavaServer Faces Web程序  22.1  简介  22.2  在Web程序中访问数据库  22.3  启用Ajax的JSF组件  22.4  创建自动完成的文本段并使用虚拟表单  22.5  小结第23章  JAX-WS Web服务  23.1  简介  23.2  Java Web服务基础  23.3  创建、发布、测试和描述Web服务  23.4  消费Web服务  23.5  SOAP  23.6  Web服务中的会话跟踪  23.7  在Web程序中消费数据库驱动的Web服务  23.8  将用户定义类型的对象传递给Web服务  23.9  小结第24章  格式化输出  24.1  简介  24.2  流  24.3  用printf进行格式化输出  24.4  输出整数  24.5  输出浮点数  24.6  输出字符串和字符  24.7  输出日期和时间  24.8  其他转换字符  24.9  用字段宽度和精度进行输出  24.10  在printf格式串中使用标志  24.11  用实参索引进行输出  24.12  输出字面值和转义序列  24.13  用Formatter类进行格式化输出  24.14  小结第25章  字符串、字符和正则表达式  25.1  简介  25.2  字符和字符串基础  25.3  String类  25.4  StringBuilder类  25.5  Character类  25.6  StringTokenizer类  25.7  正则表达式、Pattern类和Matcher类  25.8  小结附录A  运算符优先级表附录B  ASCII字符集附录C  关键字和保留字附录D  基本类型附录E  GroupLayout附录F  Java桌面集成组件(JDIC)附录G  使用Java API文档附录H  ATM案例分析代码附录I  UML 2的其他框图类型附录J  使用调试器索引

章节摘录

插图:

媒体关注与评论

以极其新颖的方式给出了软件工程和核心的Java概念,为读者深入讲解了专业软件是如何开发出来的。   ——Clark Richey(Java Champion),RABA Technologies,LLC. 设计和代码例子的优点特别突出。   ——Terrell Hull,Enterpdse Architect 讲解JDBC的那一章颇具实用性。我喜欢这些例子中所使用的Java DB/Apache Derby,它们确实使学习和理解JDBC变得简单了。   ——Sandeep Konchady,Sun Microsystems 使读者能学到最新的Web开发技术。书中的例子令人印象深刻且都是真实的!想用Ajax和JSF开发一个简单的地址定位程序吗? 请看第22章吧。   ——Nadiraj Deshpande,Sun Microsystems 以真实的、基于实例的、友好的方法涵盖了Java SE 6和Java EE 5下Web服务的讲解。作者的Web服务资源中心确实不错,甚至对 于高级开发人员也如此。   ——Sanjay Dhamankar,Sun Microsystems 对于正在渴望提高技术水平的各类Java EE开发人员而言,这是一本必读的书籍。JSF开发,可视化Web开发以及Web服务开发,从 来都不是容易的。   ——Ludovic Chapenois,Sun Microsystems 我讲授Java编程和面向对象的分析与设计。OOD/UML 2案例分析是我见过的最好的ATM例子。   ——Craig W.Slinkman,University Of Texas—Arlington 本书的前面就引入了OOP和UML 2,这种安排非常好。在结构和布局的质量上,其他任何图书都没有这本书好。通过讲解实例的 “活代码”方法,使得本书在学习效果上独树一帜。   ——Walt Bunch,Chapman University

编辑推荐

《Java程序员教程》:为具备高级语言编程经验的程序员而编写,《Java程序员教程》采用Deitel知名的“活代码”方法,深入讲解Java语言和Java API。《Java程序员教程》以全面测试的程序、语法阴影、代码高亮、逐行描述以及程序输出为背景,讲解一个一个的概念。书中包含220个Java程序,18000多行经过验证的代码,以及数百个编程提示,帮助读者建立强壮的程序。《Java程序员教程》从尽早接触类和对象的介绍开始,然后快速讲解更高级的主题,包括GUI、图形、异常处理、泛型、集合、JDBC、Java Serverr Faces以及Web服务等。读者一定会喜欢书中经典的面向对象编程内容,其中的OOD/UML2ATM案例分析给出了完整的Java代码。学习完《Java程序员教程》之后,读者就具备了建立面向对象Java程序所需的一切技能。实用的、实例丰富的Java教程类、对象、封装、继承、多态、接口、嵌套类集成的OOP案例分析:Time类、GradeBook类和Employee类行业标准的OOD/ML2ATM案例分析JavaServer Faces,启用Ajax的Web程序,Web服务,网络编程JDBCSQL,JavaDB,MySQL 线程与并发APII/O,类型,控制语句,方法 数组,泛型,集合 异常处理,文件GUI,图形,GroupLayout,JDBC使用调试器和DAPI文档更多……

图书封面

图书标签Tags

评论、评分、阅读与下载


    Java程序员教程 PDF格式下载


用户评论 (总计7条)

 
 

  •   书的质量过关,快递速度很快,价格公道,是个不错的选择。但我选择是周末送书,因为周一~周五上班,但是还是周三中午快递打电话过来叫领书,最后只有叫家人赶去代领,多有不便,希望以后能按买家要求发货送货,谢谢!
  •   好书!很基础的知识
  •   非常适合初学者~
  •   好书,奇怪为什么没人对它评论呢、?
  •   知名作者,但内容适合没有java基础,甚至没有多少编程基础的人看。高级内容很不全,不该细的地方很细。
  •   这本书很好,内容很详细很适合初学者,书中有很多的例子可以供初学者练习,如果是初学者的话我强烈建议用本书作为你的第一本java学习的书,当然每个人的阅读习惯不同,对书的内容跟排版也有不同的感受,但我想说的是,这本书初学者如果坚持学习完的话定会有收获的,当然学习完了只是学到了皮毛如果真的想当java的程序员像算法~数据结构等等还是必须的。
  •   这本书英文版是JAVA入门的经典书籍,所有细节都兼顾到了,没有编程经验的人都可以轻轻松松入门。但是这个译者是我看到翻译deitel书中最差的,没有之一,翻译后的语言的如同嚼蜡!比如%.2f的译文:”%和f之间的“.2"代表输出浮点数的小数点右边的小数位数(2),又称为该数的精度。“。这句话不读个4、5编很难搞清,本来简简单单可以翻译成”保留两位浮点数“就结了,结果弄那么一大段,还不清不楚!
 

250万本中文图书简介、评论、评分,PDF格式免费下载。 第一图书网 手机版

京ICP备13047387号-7