目录 第1章 Java概述 1 1.1 Java的特点及相关概念 1 1.1.1 Java的发展历程 1 1.1.2 Java的特点 2 1.1.3 Java虚拟机 4 1.1.4 Java的应用领域 6 1.2 Java程序开发 7 1.2.1 运行平台 7 1.2.2 Java程序开发过程 12 1.3 综合应用 14 1.4 本章小结 16 1.5 思考和练习 16 第2章 Java基础 18 2.1 Java程序概况 18 2.1.1 Java程序结构 18 2.1.2 Java注释 19 2.1.3 Java关键字 20 2.1.4 Java标识符 22 2.1.5 变量与常量 22 2.2 基本数据类型 23 2.2.1 基本数据类型概况 23 2.2.2 基本数据类型转换 27 2.3 运算符和表达式 29 2.3.1 算术运算符和算术表达式 29 2.3.2 关系运算符与关系表达式 31 2.3.3 逻辑运算符与逻辑表达式 32 2.3.4 赋值运算符与赋值表达式 32 2.3.5 位运算符 33 2.3.6 条件运算符 34 2.3.7 instanceof运算符 34 2.3.8 一般表达式 34 2.4 Java语句 36 2.4.1 Java语句概述 36 2.4.2 分支语句 37 2.4.3 循环语句 42 2.4.4 跳转语句 44 2.5 综合应用 48 2.6 本章小结 53 2.7 思考和练习 53 第3章 类与对象 56 3.1 面向对象基础 56 3.1.1 编程语言的4个发展阶段 56 3.1.2 面向过程的程序设计 57 3.1.3 面向对象的程序设计 58 3.1.4 两种程序设计语言的简单比较 60 3.2 类 60 3.2.1 类的定义 60 3.2.2 成员变量 62 3.2.3 成员方法 63 3.2.4 修饰符次序 65 3.3 对象 66 3.3.1 对象的创建 67 3.3.2 对象的使用 67 3.3.3 对象的消亡 68 3.4 变量 70 3.4.1 类中变量的分类 70 3.4.2 变量的内存分配 71 3.4.3 实例变量和静态变量的简单比较 72 3.4.4 变量初始化与赋值 74 3.5 方法 76 3.5.1 方法概述 76 3.5.2 方法分类 77 3.5.3 方法调用中的数据传递 79 3.5.4 三个重要方法 82 3.5.5 方法的递归调用 87 3.6 package和import语句 89 3.6.1 package语句 89 3.6.2 import语句 92 3.7 访问权限 92 3.7.1 类的访问控制 92 3.7.2 类成员的访问控制 95 3.8 综合应用 97 3.9 本章小结 102 3.10 思考和练习 102 第4章 继承与接口 105 4.1 继承 105 4.1.1 继承的含义 105 4.1.2 子类继承性的访问控制 107 4.1.3 子类对象的构造过程 109 4.1.4 子类的内存分布 110 4.1.5 子类对象的成员初始化 111 4.1.6 成员变量的隐藏 113 4.1.7 方法的重载与覆盖 114 4.1.8 this关键字 117 4.1.9 super关键字 120 4.1.10 对象的上下转型 121 4.2 接口 121 4.2.1 abstract类 121 4.2.2 接口的含义 123 4.2.3 接口回调 125 4.2.4 接口与抽象类的异同 126 4.3 特殊类 127 4.3.1 final类 127 4.3.2 内部类 128 4.4 综合应用 128 4.5 本章小结 133 4.6 思考和练习 133 第5章 数组与字符串 135 5.1 数组 135 5.1.1 数组的定义及说明 135 5.1.2 数组应用举例 139 5.2 字符串 143 5.2.1 String类 143 5.2.2 StringBuffer类 146 5.2.3 应用举例 147 5.3 综合应用 149 5.4 本章小结 154 5.5 思考和练习 154 第6章 Java的异常处理机制 157 6.1 异常的含义及分类 157 6.2 异常处理 158 6.2.1 异常处理的含义及必要性 158 6.2.2 异常处理的基本结构 159 6.2.3 多个catch块 160 6.2.4 finally语句 161 6.3 两种抛出异常的方式 162 6.3.1 throw——直接抛出 162 6.3.2 throws——间接抛出异常(声明异常) 166 6.4 自定义异常 167 6.5 常见异常 168 6.6 综合应用案例 168 6.7 本章小结 170 6.8 思考和练习 170 第7章 Java常见类库 171 7.1 Java类库的结构 171 7.2 常用类 172 7.2.1 System类 172 7.2.2 Math类 177 7.2.3 Random类 178 7.2.4 基本数据类型的包装类 180 7.2.5 Vector类 182 7.2.6 Stack类 186 7.2.7 Queue类 188 7.2.8 Arrays类 191 7.2.9 Hashtable类 194 7.3 本章小结 196 7.4 思考和练习 197 第8章 输入输出流及数据库操作 198 8.1 输入和输出流 198 8.1.1 流的含义 198 8.1.2 流的层次结构 199 8.1.3 标准输入输出流 200 8.1.4 File类 202 8.1.5 FileInputStream类和FileOutputStream类 203 8.1.6 DataInputStream类和DataOutputStream类 206 8.1.7 随机访问文件 209 8.1.8 Reader类和Writer类 211 8.1.9 IOException类的子类 213 8.1.10 综合应用 213 8.2 数据库操作 219 8.2.1 ODBC概述 219 8.2.2 JDBC概述 221 8.2.3 使用JDBC-ODBC技术访问数据库 222 8.2.4 综合应用 225 8.2.5 基本SQL语句 228 8.3 建立数据源的操作 230 8.4 本章小结 233 8.5 思考和练习 233 第9章 多线程 234 9.1 多线程的概念 234 9.2 线程类 235 9.2.1 多线程编程中常用的常量和方法 235 9.2.2 线程的生命周期 236 9.2.3 创建多线程的方法 237 9.3 资源的协调与同步 242 9.3.1 线程调度模型 242 9.3.2 资源冲突 243 9.3.3 同步方法 244 9.4 线程间通信 247 9.4.1 共享变量和方法封装在一个类中 247 9.4.2 通过系统方法实现线程通信 248 9.5 本章小结 252 9.6 思考和练习 252 第10章 图形用户界面设计 253 10.1 Java的AWT和Swing基础 253 10.1.1 Java的AWT和Swing概述 253 10.1.2 Java的AWT组件和Swing组件 254 10.1.3 利用AWT组件和Swing组件进行程序设计的基本步骤 256 10.2 常用容器 257 10.2.1 框架 257 10.2.2 面板 259 10.2.3 滚动窗口 260 10.2.4 菜单设计 262 10.2.5 对话框 264 10.3 布局管理器 267 10.3.1 FlowLayout布局 267 10.3.2 BorderLayout布局 268 10.3.3 GridLayout布局 270 10.3.4 CardLayout布局 270 10.3.5 null布局 271 10.4 事件处理 273 10.4.1 委托事件模型 273 10.4.2 键盘事件 276 10.4.3 鼠标事件 277 10.5 常用组件 279 10.5.1 按钮 279 10.5.2 标签 281 10.5.3 文本行 283 10.5.4 文本域 285 10.5.5 复选框 286 10.5.6 单选框 288 10.5.7 选择框 291 10.5.8 列表 292 10.6 综合应用 294 10.7 本章小结 300 10.8 思考和练习 300 参考文献 302