目录 第1章Java概述与工具安装1 1.1Java概述1 1.1.1计算机程序1 1.1.2Java技术体系2 1.1.3Java历史2 1.1.4Java特点3 1.2JDK安装与配置3 1.2.1JDK概述与下载3 1.2.2JDK安装3 1.2.3JDK配置6 1.2.4环境测试8 1.2.5JDK目录介绍9 1.3开发工具安装与使用9 1.3.1工具介绍和下载9 1.3.2工具安装10 本章小结12 练习题13 第2章Java程序入门14 2.1一个简单的Java程序14 2.1.1创建Java项目14 2.1.2编写简单代码15 2.1.3运行测试16 2.2Java运行机制17 2.2.1Java运行流程17 2.2.2Java虚拟机17 本章小结18 练习题18 第3章Java语言基础19 3.1基本语法19 3.1.1语句和表达式19 3.1.2注释19 3.1.3计量单位20 3.2基本数据类型21 3.2.1整数类型21 3.2.2浮点数类型22 3.2.3字符类型22 3.2.4布尔类型22 3.3变量和常量23 3.3.1变量的定义23 3.3.2类型转换24 3.3.3常量24 3.4运算符25 3.4.1算术运算符25 3.4.2赋值运算符26 3.4.3关系运算符26 3.4.4逻辑运算符27 3.4.5位运算符28 3.4.6运算符优先级30 3.5选择结构31 3.5.1if语句31 3.5.2switch语句32 3.6循环结构33 3.6.1for循环33 3.6.2while循环34 3.6.3dowhile循环35 3.6.4嵌套循环36 3.6.5break和continue36 3.7数组38 3.7.1数组的定义38 3.7.2数组初始化38 3.7.3数组的操作39 3.7.4二维数组40 本章小结43 练习题43 第4章面向对象(初级)44 4.1面向对象程序设计44 4.2方法46 4.2.1方法的定义46 4.2.2方法的调用47 4.2.3方法的好处48 4.2.4方法重载49 4.2.5方法的递归50 4.3类和对象51 4.3.1类的定义51 4.3.2对象的创建和使用52 4.3.3访问控制符53 4.4构造方法54 4.4.1构造方法的定义54 4.4.2构造方法的重载55 4.5this和static56 4.5.1this关键字56 4.5.2static关键字59 4.6代码块60 4.6.1构造代码块60 4.6.2静态代码块61 4.6.3方法代码块62 本章小结63 练习题63 第5章面向对象(高级)65 5.1继承65 5.1.1继承的概念65 5.1.2方法重写66 5.1.3super关键字68 5.1.4多态69 5.2final关键字71 5.2.1final关键字修饰类71 5.2.2final关键字修饰方法71 5.2.3final关键字修饰变量72 5.3抽象类和接口73 5.3.1抽象类74 5.3.2接口75 5.3.3接口的实现76 5.3.4接口的继承78 5.3.5接口新特性79 5.4内部类80 5.4.1成员内部类81 5.4.2静态内部类82 5.4.3方法内部类83 5.4.4匿名内部类83 本章小结84 练习题85 第6章异常与调试86 6.1异常的概念86 6.2异常的类型87 6.3异常的处理88 6.3.1异常捕获88 6.3.2异常抛出89 6.4异常的调试90 6.5自定义异常92 6.5.1throw关键字92 6.5.2自定义异常的方法及实例93 本章小结95 练习题95 第7章Java常用类库97 7.1Object类97 7.1.1clone方法98 7.1.2equals方法99 7.1.3finalize方法101 7.1.4getClass方法102 7.1.5hashCode方法103 7.1.6toString方法104 7.2基本类型的包装类105 7.2.1包装类的概念105 7.2.2装箱操作106 7.2.3拆箱操作107 7.2.4JDK 5.0新特性——自动装箱和拆箱108 7.3Scanner类109 7.4Math类110 7.5字符串操作类111 7.5.1String类介绍112 7.5.2String类的常用操作113 7.5.3StringBuffer类117 7.5.4StringBuilder类118 7.5.5正则表达式119 7.6日期操作类121 7.6.1Date类121 7.6.2Calendar类122 7.6.3SimpleDateFormat类123 本章小结124 练习题124 第8章集合125 8.1集合概述125 8.2List集合126 8.2.1List概述126 8.2.2ArrayList127 8.2.3LinkedList128 8.2.4foreach循环130 8.2.5泛型131 8.3Set集合132 8.3.1Set概述132 8.3.2HashSet132 8.3.3TreeSet134 8.4Map集合137 8.4.1Map概述137 8.4.2HashMap138 8.4.3Properties139 8.5集合工具类140 8.5.1Collections140 8.5.2Arrays143 本章小结144 练习题145 第9章I/O流147 9.1I/O流概述147 9.1.1I/O流介绍147 9.1.2I/O流分类147 9.2字符编码148 9.2.1字符集概述148 9.2.2常见字符集148 9.2.3编码和解码149 9.3File类149 9.3.1File类构造方法150 9.3.2File类常用方法150 9.3.3目录遍历152 9.3.4文件过滤154 9.3.5删除文件及目录155 9.4字节流156 9.4.1字节输入流157 9.4.2字节输出流160 9.4.3字节流文件复制161 9.4.4字节缓冲流163 9.5字符流164 9.5.1字符输入流164 9.5.2字符输出流166 9.5.3字符流文件复制167 9.5.4字符缓冲流168 9.5.5转换流169 9.6其他流171 9.6.1打印流171 9.6.2标准输入/输出流173 9.6.3对象流174 9.6.4序列流177 本章小结178 练习题178 第10章多线程180 10.1Runtime类与Process类180 10.2新建线程182 10.2.1继承Thread类182 10.2.2实现Runnable接口185 10.3线程生命周期186 10.4线程的调度187 10.4.1线程的优先级187 10.4.2线程休眠189 10.4.3线程让步189 10.4.4线程插队190 10.4.5守护线程191 10.5线程同步192 10.5.1线程安全193 10.5.2同步锁194 10.5.3死锁问题196 10.6线程通信198 本章小结200 练习题200 第11章网络编程202 11.1网络编程概述202 11.1.1网络模型202 11.1.2IP和端口203 11.1.3InetAddress204 11.2TCP205 11.2.1TCP概述205 11.2.2Socket206 11.3UDP208 11.3.1UDP概述208 11.3.2UDP通信209 本章小结210 练习题211 第12章Lambda和Stream212 12.1Lambda表达式212 12.1.1函数式接口212 12.1.2Lambda概述213 12.1.3Lambda示例213 12.2Stream流操作214 12.2.1Stream概述214 12.2.2Stream示例215 本章小结217 练习题218 第13章项目实战219 13.1项目介绍219 13.2图形用户界面220 13.2.1窗体220 13.2.2面板221 13.2.3常用组件222 13.2.4事件监听器223 13.2主界面编码224 13.3卡片布局编码226 13.4卡槽功能编码231 本章小结234 参考文献235