| 作者 |
| 郑阿奇 |
| 丛书名 |
| 出版社 |
| 电子工业出版社 |
| ISBN |
| 9787121379451 |
| 简要 |
| 简介 |
| 内容简介 本书以*长期支持稳定版本Java为基础,对第3版进行了升级;除保留了原版内容的循序渐进、深入浅出等诸多优点外,精心设计每个实例,囊括了Java的*语言特性;增强了Java数据库编程部分的内容,涉及操作*MySQL、SQL Server、Oracle等多种*主流数据库的关键技术。 本书由Java实用教程、实验、习题集这三个部分组成。第1部分:一般在介绍内容后紧跟相关的实例演示,在第2、4、7、9~12、14、15章章尾配有综合实例,以提高读者综合应用已学过的主要知识的能力。第2部分:首先通过实例引导读者学习,然后提出思考问题,*后在原有基础上让读者自己进行操作和编程练习。第3部分:本版系统地扩充了习题的内容,对应于主要知识点,对所有习题均结合书中重要知识点进行了精心设计;通过扫描书中的二维码可得到配套答案,帮助读者在巩固所学知识的同时提高能力。 本书以*版Eclipse作为Java的集成开发环境,该版本与各版JDK的兼容性较好,能将用户以旧版JDK开发的Java项目自动转换成新版项目,其编写、调试、运行Java程序都十分方便。本书所有实例均在*版Eclipse下调试通过,实例运行结果以抓图形式提供。 与本书配套的同步电子课件,可直接用于课堂教学。书中的源代码和电子课件,可从华信教育资源网(http://www.hxedu.com.cn)上免费下载。本书对每个重要知识点均提供通过二维码播放的配套视频教学,既可以作为课后教学辅助,也可作为课程自学。 本书既可作为大学本科和专科计算机及相关专业的教材,也可作为Java自学者或应用开发者的参考书。 |
| 目录 |
第1部分 Java实用教程 第1章 Java语言及编程环境\t1 1.1 Java语言简介\t1 1.1.1 Java语言特点\t1 1.1.2 Java运行机制\t2 1.1.3 从Java 5到Java 11\t3 1.2 Java编程环境\t4 1.2.1 JDK 11\t4 1.2.2 Eclipse集成开发环境\t6 第2章 Java语法基础\t19 2.1 常量和变量\t19 2.1.1 数据类型\t19 2.1.2 标识符和关键字\t19 2.1.3 常量\t20 2.1.4 变量\t22 2.1.5 类型转换\t23 2.2 运算符和表达式\t25 2.2.1 运算符\t25 2.2.2 表达式\t30 2.3 流程控制\t30 2.3.1 分支语句\t30 2.3.2 循环语句\t33 2.3.3 流程跳转语句\t36 2.4 数组\t37 2.4.1 一维数组\t37 2.4.2 多维数组\t39 2.4.3 数组的访问\t42 2.5 综合实例\t44 第3章 Java类与对象\t47 3.1 Java语言的类\t47 3.1.1 面向对象程序设计概念\t47 3.1.2 类的定义\t48 3.1.3 变量初始化\t49 3.1.4 类的方法\t51 3.2 创建对象\t55 3.2.1 构造方法\t55 3.2.2 默认构造方法\t57 3.2.3 构造方法重载\t58 3.3 this引用\t59 3.4 静态成员\t61 3.4.1 静态变量\t61 3.4.2 静态方法\t62 3.4.3 main()方法\t63 3.4.4 静态代码块\t65 3.5 内部类\t65 3.5.1 实例内部类\t66 3.5.2 匿名内部类\t68 3.5.3 static内部类\t69 3.5.4 局部内部类\t70 3.6 类的打包或封装\t70 3.6.1 包(package)机制\t70 3.6.2 创建JAR文件\t74 第4章 Java面向对象编程\t76 4.1 继承\t76 4.1.1 继承的定义\t76 4.1.2 初始化基类\t77 4.1.3 方法的重写\t78 4.1.4 super关键字\t80 4.2 多态\t81 4.2.1 对象的类型转换\t81 4.2.2 多态的实现\t84 4.3 抽象类和接口\t86 4.3.1 抽象方法与抽象类\t86 4.3.2 接口概念及特性\t87 4.4 终止继承\t89 4.4.1 final类\t90 4.4.2 final方法\t90 4.4.3 final变量\t91 4.5 修饰符的适用范围\t93 4.5.1 修饰符及访问权限\t93 4.5.2 类内部\t93 4.5.3 同一个包的类\t94 4.5.4 不同包的子类\t95 4.5.5 任意类\t96 4.5.6 继承规则\t97 4.6 Java编程规范\t97 4.6.1 代码书写规范\t97 4.6.2 文档的使用\t98 4.7 综合实例:航班管理\t99 4.7.1 需求分析\t99 4.7.2 程序设计\t100 4.7.3 文档编制\t109 第5章 Java常用类\t111 5.1 Object类\t111 5.1.1 equals()方法\t111 5.1.2 hashCode()方法\t112 5.1.3 toString()方法\t113 5.2 字符串类\t114 5.2.1 String类\t114 5.2.2 StringBuffer类\t118 5.3 包装类\t119 5.4 Math类\t121 5.5 Random类\t122 5.6 日期时间类\t123 5.6.1 新日期时间包\t123 5.6.2 日历应用\t124 5.7 正则表达式\t125 5.7.1 基础知识\t125 5.7.2 正则表达式的应用\t128 5.8 数组实用类\t131 5.8.1 复制数组\t131 5.8.2 数组排序\t132 5.8.3 数组元素的查找\t133 第6章 Java语言新特性\t135 6.1 枚举\t135 6.1.1 定义枚举类型\t135 6.1.2 enum构造方法\t136 6.1.3 使用EnumMap\t137 6.2 注解\t138 6.2.1 内置注解\t138 6.2.2 自定义注解\t142 6.2.3 元注解\t142 6.3 lambda表达式\t145 6.3.1 lambda表达式简介\t145 6.3.2 函数式接口\t146 6.3.3 lambda表达式与匿名 内部类\t147 6.3.4 方法引用\t149 第7章 容器和泛型\t150 7.1 Collection与Iterator接口\t150 7.2 Collections实用类\t152 7.3 Set(集合)\t153 7.3.1 HashSet类\t153 7.3.2 TreeSet类\t155 7.4 List(列表)\t158 7.4.1 ArrayList类\t158 7.4.2 LinkedList类\t161 7.4.3 栈的实现\t162 7.5 Queue(队列)\t163 7.5.1 LinkedList类实现\t163 7.5.2 PriorityQueue类\t163 7.5.3 双向队列\t165 7.6 Map(映射)\t166 7.6.1 HashMap\t166 7.6.2 TreeMap \t167 7.7 泛型\t169 7.7.1 泛型的基本概念\t169 7.7.2 泛型方法\t171 7.7.3 受限泛型\t173 7.7.4 通配符与受限通配符\t174 7.7.5 子类泛型\t175 7.7.6 泛型数组\t177 7.8 Java增强容器特性\t178 7.9 综合实例\t180 第8章 异常处理\t183 8.1 异常概述\t183 8.2 异常处理机制\t184 8.2.1 异常的捕获与处理\t184 8.2.2 声明抛出异常子句\t186 8.2.3 抛出异常\t186 8.3 自定义异常类\t187 第9章 Java输入/输出系统\t190 9.1 字节流\t190 9.1.1 字节数组输入流\t191 9.1.2 字节数组输出流 \t192 9.1.3 文件输入流 \t192 9.1.4 文件输出流\t193 9.1.5 管道流\t194 9.2 过滤流\t195 9.2.1 缓冲流类\t196 9.2.2 数据流类\t197 9.2.3 PrintStream类\t199 9.3 字符流\t200 9.3.1 转换流类\t201 9.3.2 FileReader和FileWriter类\t202 9.3.3 BufferedReader和 BufferedWriter类\t203 9.3.4 PrintWriter类\t204 9.4 标准I/O\t205 9.4.1 重新包装标准I/O\t206 9.4.2 标准I/O流重定向\t206 9.5 随机访问文件类\t207 9.6 对象序列化\t210 9.7 File类\t211 9.8 综合实例\t213 第10章 多线程\t215 10.1 线程的创建与启动\t215 10.1.1 继承java.lang.Thread类\t215 10.1.2 实现Runnable接口\t217 10.2 线程的状态转换\t218 10.3 线程调度\t219 10.3.1 调整线程优先级\t219 10.3.2 线程让步\t220 10.3.3 合并线程\t221 10.4 后台线程\t222 10.5 线程互斥\t223 10.5.1 临界区\t223 10.5.2 对象锁机制\t225 10.5.3 显式Lock对象\t228 10.6 线程同步\t230 10.7 综合实例\t233 第11章 AWT图形用户界面编程\t238 11.1 AWT容器\t238 11.1.1 Window和Frame\t239 11.1.2 Panel\t239 11.2 布局管理器\t241 11.3 事件处理机制\t243 11.3.1 AWT事件与监听器\t243 11.3.2 窗口事件\t244 11.3.3 鼠标事件\t246 11.3.4 键盘事件\t247 11.3.5 内部类实现监听器接口\t249 11.3.6 类自身实现监听器接口\t250 11.3.7 外部类实现监听器接口\t251 11.3.8 采用事件适配器\t253 11.4 在AWT中绘图\t255 11.4.1 Graphics类\t255 11.4.2 AWT绘图实现原理\t257 11.5 综合实例\t259 第12章 Swing组件及应用\t264 12.1 窗口(JFrame)\t264 12.2 Swing基本组件\t265 12.2.1 按钮(JButton)\t265 12.2.2 文本框(JTextField)\t267 12.2.3 复选框(JCheckBox)和 单选按钮(JRadioButton)\t269 12.2.4 列表框(JList)\t272 12.3 Swing菜单程序设计\t274 12.3.1 菜单条(JMenuBar)\t274 12.3.2 弹出式菜单 (JPopupMenu)\t277 12.3.3 页签面板(JTabbedPane)\t279 12.3.4 工具栏(JToolBar)\t281 12.4 Swing数据管理组件\t283 12.4.1 表格(JTable)\t284 12.4.2 树状视图(JTree)\t286 12.5 Swing标准对话框\t287 12.5.1 对话框(JDialog)\t287 12.5.2 消息框(JOptionPane)\t289 12.5.3 文件对话框 (JFileChooser)\t291 12.6 综合实例\t293 第13章 Java基础开发综合实习\t297 13.1 设计思路\t297 13.2 汉诺塔上盘子模拟\t297 13.3 对象定位及盘子的存放\t298 13.4 创建汉诺塔及实现手工搬运盘子\t299 13.5 自动搬运盘子\t305 第14章 Java网络编程\t312 14.1 网络程序设计基础\t312 14.1.1 TCP与UDP\t312 14.1.2 端口和套接字\t312 14.2 TCP网络编程\t313 14.2.1 TCP通信模型\t313 14.2.2 Socket编程相关类\t313 14.2.3 TCP通信程序\t316 14.3 UDP网络编程\t319 14.3.1 UDP相关类\t319 14.3.2 UDP通信程序\t321 14.3.3 组播\t324 14.4 URL网络编程\t327 14.4.1 URL类\t327 14.4.2 URLConnetction类\t329 14.5 综合实例\t331 第15章 Java数据库编程\t336 15.1 SQL语言简介\t336 15.2 JDBC原理\t337 15.3 访问数据库\t339 15.3.1 加载并注册数据库驱动\t339 15.3.2 建立到数据库的连接\t340 15.3.3 执行数据库操作\t341 15.4 JDBC操作MySQL\t342 15.4.1 获取和加载驱动\t342 15.4.2 创建数据库和表\t345 15.4.3 操作数据库\t347 15.4.4 事务处理\t349 15.4.5 存储过程\t351 15.5 JDBC操作其他数据库\t353 15.5.1 JDBC操作SQL Server\t354 15.5.2 JDBC操作Oracle\t355 15.6 综合实例\t356 第2部分 实 验 实验1 Java语言及编程环境\t362 实验2 Java语法基础\t363 实验3 Java类与对象\t365 实验4 Java面向对象编程\t368 实验5 Java常用类\t371 实验6 Java语言新特性\t373 实验7 容器和泛型\t374 实验8 Java异常处理\t377 实验9 Java输入/输出系统\t378 实验10 多线程\t379 实验11 AWT图形用户界面编程\t380 实验12 Swing组件及应用\t383 实验13 Java网络编程\t386 实验14 Java数据库编程\t392 第3部分 习 题 集 第1章 Java语言及编程环境\t399 第2章 Java语法基础\t399 第3章 Java类与对象\t402 第4章 Java面向对象编程\t402 第5章 Java常用类\t403 第6章 Java语言新特性\t403 第7章 容器和泛型\t403 第8章 异常处理\t404 第9章 Java输入/ |