内 容 简 介
本书在保持第一版教材原创风格的基础上,按照案例化、实例化的设计原则,解析了原有的知识体系,重新构建了新的知识结构与技术框架,增加了大量具有原创性的案例和实例,并将知识的讲授与案/实例的剖析讲解有机地结合起来,力图将Java面向对象的实质和特色淋漓尽致地展示给读者,帮助读者扎实而深入地掌握Java编程的技能与技巧,培养读者灵活运用知识进行应用开发的能力和素养。
全书共分12章,包含了75个精心创作或改编的案例和实例。主要内容包括:Java程序开发环境的搭建、面向对象的Java编程、Java编程基础、抽象与封装、字符串与数组、继承与多态、异常处理、图形化用户界面设计、事件处理、GUI应用开发、输入输出流、Java数据库应用开发等。每章后面都配有丰富的习题,附录的内容为主要习题的参考答案。
本书可作为培养应用型、技能型人才的Java课程教材,亦可作为相关专业的大中专学生及从事Java开发的技术人员的参考书。
前 言
自2008年10月教材的第一版出版以来,Java技术正以日新月异的速度在不断地发展着。Java语言以自身诸多优秀的品格、跨平台的特性,以及开源的理念,为越来越多的人士所喜爱、所使用,成为网络编程、手机开发等领域的主流编程语言。
感谢本教材第一版的忠实读者们。他们中有大中专院校的学生,有高校或培训机构的教师,有科研院所的研究人员,还有从事Java开发的技术人员。感谢他们对本教材的选择与肯定,感谢他们在使用本教材的过程中,向作者提出了许多中肯的意见与合理的建议。这些宝贵的意见和建议,使我在修订教材的进程中受益无穷。毫不夸张地讲:没有读者一贯的支持与鼓励,就没有教材第二版的问世。
新教材采用版本较新的JDK7和广为流行的MyEclipse作为开发平台,对原有教材的知识体系作了重大的调整,删除了部分不合时宜的内容,增加了数据库开发等章节,并进一步加大了面向对象知识的讲解力度,使新教材的结构与内容更为合理,更适合初学者使用。
与第一版相比,本书在知识安排与讲解体例上都有重大的改进。本书彻底采用案例、实例教学法展开讲解,75个精心编制的案例和实例贯穿全书。每个案例与实例都紧扣核心知识点,通过解题思路点拨与代码剖析,向读者传授编程的方法与技巧,揭示编程的要义与规律,以期提升读者抽象思维和逻辑思维的素养,培养读者分析问题与解决问题的能力。
本书适合理论与实践一体化的教学模式。总学时建议不宜低于120课时。各章节的教学内容与建议学时如下表所示。教学过程中,教师可酌情调整。
教学内容与学时建议参考表
章 节 教学内容 建议学时 章 节 教学内容 建议学时
第1章 Java程序开发环境的搭建 6 第7章 异常处理 6
第2章 面向对象的Java编程 6 第8章 图形化用户界面设计 14
第3章 Java编程基础 14 第9章 事件处理 10
第4章 抽象与封装 10 第10章 GUI应用开发 8
第5章 字符串与数组 10 第11章 输入输出流 8
第6章 继承与多态 14 第12章 Java数据库应用开发 14
建议总学时:120
本书在编著与出版的过程中,还得到了“山东省重大水利科研与技术推广专项资金”的资助,在此一并表示感谢。
本书所有的附加资源,包括电子课件、图表素材、实例代码、模拟试卷、实训指导书等,读者可以从清华大学出版社的官网上自由下载。
每一部书稿,从交稿的那一天起,都注定要成为我人生中的又一次遗憾。总是在完稿的那一刻,才感觉到自己脑海中一直激荡着的许多绝妙的设想和构思,却没有最终完美地体现在书稿中。这也许要归咎于本人学艺不精,抑或是笔力不逮。由于知识与水平所限,书中的错误与疏漏在所难免,还请各位读者与专家予以谅解。随时欢迎您的批评、指正和建议,编者将不胜感激。
最后,恭祝每位与本书有缘的读者,能够诸事遂意,心想事成!
编 者
目 录第1章 Java程序开发环境的搭建 11.1 案例1:基于JDK的Java程序验证 11.1.1 必备知识 11.1.2 案例综述 21.1.3 解决步骤 41.1.4 拓展提升 101.2 案例2:基于MyEclipse的Java程序验证 101.2.1 必备知识 111.2.2 案例综述 111.2.3 解决步骤 121.2.4 拓展提升 20习题 20第2章 面向对象的Java编程 232.1 案例1:输出单行信息的Java应用程序 232.1.1 必备知识 232.1.2 案例综述 242.1.3 案例解决 242.1.4 拓展提升 282.2 案例2:体现面向对象特征的Java程序 312.2.1 必备知识 312.2.2 案例综述 332.2.3 案例解决 332.2.4 拓展提升 372.3 案例3:Java Applet程序 382.3.1 必备知识 392.3.2 案例综述 392.3.3 案例解决 402.3.4 拓展提升 42习题 43第3章 Java编程基础 453.1 单元1:数据表达 453.1.1 Java语言符号集 453.1.2 Java数据类型 473.1.3 常量与变量 473.1.4 数据类型转型 503.2 单元2:运算符与表达式 513.2.1 运算符与表达式 513.2.2 运算符的优先级 563.3 单元3:程序的结构 573.3.1 语句与顺序结构 583.3.2 分支结构 593.3.3 循环结构 643.3.4 循环嵌套 713.3.5 跳转语句 74习题 78第4章 抽象与封装 804.1 单元1:类的构成要素 804.1.1 面向对象的基本特征 804.1.2 类的定义 824.1.3 属性声明 854.1.4 构造方法定义 874.1.5 成员方法定义 894.2 单元2:Java的封装机制 934.2.1 Java的修饰符 934.2.2 访问修饰符 944.2.3 特征修饰符 994.3 单元3:成员方法的应用 1024.3.1 成员方法的分类 1024.3.2 成员方法中的数据 1034.3.3 读/写属性的成员方法 104习题 109第5章 字符串与数组 1125.1 单元1:常用的系统内部类 1125.1.1 Java的系统类包 1125.1.2 Math类 1135.1.3 基本数据类型的封装 1165.2 单元2:字符串String 1215.2.1 String类 1215.2.2 StringBuffer类 1255.3 单元3:数组 1275.3.1 一维数组 1275.3.2 多维数组 1315.3.3 数组的应用 136习题 140第6章 继承与多态 1426.1 单元1:继承机制 1426.1.1 继承的概念与实现 1426.1.2 构造方法的继承 1446.1.3 继承的特征与意义 1486.2 单元2:Java的多态 1496.2.1 属性隐藏与方法重写 1496.2.2 方法重载 1536.2.3 重载与重写的不同 1586.3 单元3:抽象类与最终类 1596.3.1 抽象类与抽象方法 1596.3.2 最终类与最终方法 1636.4 单元4:接口 1656.4.1 接口的定义与实现 1656.4.2 深入理解接口 1716.5 单元5:包 1766.5.1 包及包的创建 1766.5.2 包的引用 178习题 181第7章 异常处理 1847.1 单元1:异常处理 1847.1.1 异常类 1847.1.2 异常处理机制 1877.2 单元2:定制异常处理 1907.2.1 抛出异常 1917.2.2 自定义异常 1937.2.3 异常处理机制的特点 197习题 197第8章 图形化用户界面设计 1998.1 单元1:AWT 1998.1.1 AWT的类与组织 1998.1.2 设置颜色与字体 2038.1.3 AWT的应用程序窗体 2058.2 单元2:Swing的容器组件 2088.2.1 框架窗体JFrame 2098.2.2 其他的容器类 2138.3 单元3:Swing的基本组件 2158.3.1 基本组件类 2158.3.2 标签与命令按钮 2168.3.3 文本类组件 2188.3.4 选择类组件 2218.3.5 列表类组件 2238.4 单元4:布局管理器 2278.4.1 AWT的布局管理器 2288.4.2 BorderLayout 2288.4.3 GridLayout 2308.4.4 FlowLayout 2328.4.5 CardLayout 235习题 237第9章 事件处理 2409.1 单元1:事件驱动编程 2409.1.1 重要概念 2409.1.2 Java的事件 2419.1.3 事件处理原理 2439.2 单元2:监听器接口与适配器 2479.2.1 事件监听器接口 2479.2.2 事件适配器类 2519.2.3 内部类 2549.2.4 匿名类 257习题 260第10章 GUI应用开发 26210.1 单元1:菜单系统与工具栏 26210.1.1 菜单系统设计 26210.1.2 工具栏 27010.2 单元2:Swing的高级组件 27310.2.1 选项卡窗格集JTabbedPane 27310.2.2 表格JTable 27710.2.3 层次树JTree 280习题 284第11章 输入输出流 28611.1 单元1:流与文件 28611.1.1 流的类别 28611.1.2 文件类File 28911.2 单元2:字节流的输入输出 29311.2.1 抽象字节流类InputStream与OutputStream 29411.2.2 字节文件流类FileInputStream和FileOutputStream 29511.2.3 字节缓冲流类BufferedInputStream和BufferedOutputStream 29711.2.4 字节数据流类DataInputStream和DataOutputStream 29811.3 单元3:字符流的输入输出 30111.3.1 抽象字符流类Reader和Writer 30111.3.2 转换流类InputStreamReader和OutputStreamWriter 30211.3.3 字符文件流类FileReader和FileWriter 30311.3.4 字符缓冲流类BufferedReader和BufferedWriter 30511.3.5 系统类System 308习题 312第12章 Java数据库应用开发 31412.1 单元1:JDBC 31412.1.1 JDBC概述 31512.1.2 JDBC驱动程序的类别 31712.1.3 JDBC的类与接口 31812.1.4 为MyEclipse配置JDBC运行环境 32412.2 单元2: JDBC操纵数据库中的数据 32712.2.1 编写JDBC数据库应用程序的步骤 32712.2.2 创建数据库表 33312.2.3 查询数据 33612.2.4 增加数据 33912.2.5 修改数据 34212.2.6 删除数据 344习题 346各章课后习题参考答案 348参考文献 354