# Thinking-in-Java **Repository Path**: zhuyan005/Thinking-in-Java ## Basic Information - **Project Name**: Thinking-in-Java - **Description**: No description available - **Primary Language**: 其他 - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2021-06-28 - **Last Updated**: 2021-09-11 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README ## Thinking in Java (Java 编程思想) 对于一个开发者而言,能够胜任系统中任意一个模块的开发是其核心价值的体现。 对于一个架构师而言,掌握各种语言的优势并可以运用到系统中,由此简化系统的开发,是其架构生涯的第一步。 对于一个开发团队而言,能在短期内开发出用户满意的软件系统是起核心竞争力的体现。 每一个程序员都不能固步自封,要多接触新的行业,新的技术领域,突破自我。 本书来自网络,[全科-不安分的码农](http://quanke.name)整理成电子书,支持PDF,ePub,Mobi格式,方便大家下载阅读。 - [阅读地址](https://alleniverson.gitbooks.io/thinking-in-java/content/) - [下载地址](https://www.gitbook.com/book/alleniverson/thinking-in-java/details) - [github地址](https://github.com/JackChen1999/think-in-java) - [GitBook](https://www.gitbook.com/@alleniverson) 第13章没有编辑,觉得没有意义,Java的GUI现在应用少,有时间再编辑好 ## 目录 * [前言](README.html) * [写在前面的话](写在前面的话.html) * [引言](引言.html) * [第1章 对象入门](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter1/第1章%20对象入门.html) * [1.1 抽象的进步](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter1/1.1%20抽象的进步.html) * [1.2 对象的接口](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter1/1.2%20对象的接口.html) * [1.3 实现方案的隐藏](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter1/1.3%20实现方案的隐藏.html) * [1.4 方案的重复使用](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter1/1.4%20方案的重复使用.html) * [1.5 继承:重新使用接口](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter1/1.5%20继承:重新使用接口.html) * [1.6 多形对象的互换使用](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter1/1.6%20多形对象的互换使用.html) * [1.7 对象的创建和存在时间](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter1/1.7%20对象的创建和存在时间.html) * [1.8 违例控制:解决错误](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter1/1.8%20违例控制:解决错误.html) * [1.9 多线程](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter1/1.9%20多线程.html) * [1.10 永久性](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter1/1.10%20永久性.html) * [1.11 Java和因特网](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter1/1.11%20Java和因特网.html) * [1.12 分析和设计](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter1/1.12%20分析和设计.html) * [1.13 Java还是C++](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter1/1.13%20Java还是C++.html) * [第2章 一切都是对象](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter2/第2章%20一切都是对象.html) * [2.1 用句柄操纵对象](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter2/2.1%20用句柄操纵对象.html) * [2.2 所有对象都必须创建](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter2/2.2%20所有对象都必须创建.html) * [2.3 绝对不要清除对象](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter2/2.3%20绝对不要清除对象.html) * [2.4 新建数据类型:类](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter2/2.4%20新建数据类型:类.html) * [2.5 方法、自变量和返回值](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter2/2.5%20方法、自变量和返回值.html) * [2.6 构建Java程序](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter2/2.6%20构建Java程序.html) * [2.7 我们的第一个Java程序](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter2/2.7%20我们的第一个Java程序.html) * [2.8 注释和嵌入文档](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter2/2.8%20注释和嵌入文档.html) * [2.9 编码样式](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter2/2.9%20编码样式.html) * [2.10 总结](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter2/2.10%20总结.html) * [2.11 练习](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter2/2.11%20练习.html) * [第3章 控制程序流程](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter3/第3章%20控制程序流程.html) * [3.1 使用Java运算符](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter3/3.1%20使用Java运算符.html) * [3.2 执行控制](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter3/3.2%20执行控制.html) * [3.3 总结](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter3/3.3%20总结.html) * [3.4 练习](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter3/3.4%20练习.html) * [第4章 初始化和清除](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter4/第4章%20初始化和清除.html) * [4.1 用构建器自动初始化](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter4/4.1%20用构建器自动初始化.html) * [4.2 方法过载](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter4/4.2%20方法过载.html) * [4.3 清除:收尾和垃圾收集](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter4/4.3%20清除:收尾和垃圾收集.html) * [4.4 成员初始化](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter4/4.4%20成员初始化.html) * [4.5 数组初始化](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter4/4.5%20数组初始化.html) * [4.6 总结](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter4/4.6%20总结.html) * [4.7 练习](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter4/4.7%20练习.html) * [第5章 隐藏实施过程](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter5/第5章%20隐藏实施过程.html) * [5.1 包:库单元](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter5/5.1%20包:库单元.html) * [5.2 Java访问指示符](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter5/5.2%20Java访问指示符.html) * [5.3 接口与实现](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter5/5.3%20接口与实现.html) * [5.4 类访问](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter5/5.4%20类访问.html) * [5.5 总结](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter5/5.5%20总结.html) * [5.6 练习](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter5/5.6%20练习.html) * [第6章 类再生](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter6/第6章%20类再生.html) * [6.1 合成的语法](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter6/6.1%20合成的语法.html) * [6.2 继承的语法](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter6/6.2%20继承的语法.html) * [6.3 合成与继承的结合](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter6/6.3%20合成与继承的结合.html) * [6.4 到底选择合成还是继承](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter6/6.4%20到底选择合成还是继承.html) * [6.5 protected](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter6/6.5%20protected.html) * [6.6 累积开发](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter6/6.6%20累积开发.html) * [6.7 上溯造型](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter6/6.7%20上溯造型.html) * [6.8 final关键字](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter6/6.8%20final关键字.html) * [6.9 初始化和类装载](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter6/6.9%20初始化和类装载.html) * [6.10 总结](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter6/6.10%20总结.html) * [6.11 练习](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter6/6.11%20练习.html) * [第7章 多形性](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter7/第7章%20多形性.html) * [7.1 上溯造型](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter7/7.1%20上溯造型.html) * [7.2 深入理解](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter7/7.2%20深入理解.html) * [7.3 覆盖与过载](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter7/7.3%20覆盖与过载.html) * [7.4 抽象类和方法](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter7/7.4%20抽象类和方法.html) * [7.5 接口](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter7/7.5%20接口.html) * [7.6 内部类](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter7/7.6%20内部类.html) * [7.7 构建器和多形性](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter7/7.7%20构建器和多形性.html) * [7.8 通过继承进行设计](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter7/7.8%20通过继承进行设计.html) * [7.9 总结](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter7/7.9%20总结.html) * [7.10 练习](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter7/7.10%20练习.html) * [第8章 对象的容纳](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter8/第8章%20对象的容纳.html) * [8.1 数组](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter8/8.1%20数组.html) * [8.2 集合](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter8/8.2%20集合.html) * [8.3 枚举器(反复器)](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter8/8.3%20枚举器(反复器).html) * [8.4 集合的类型](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter8/8.4%20集合的类型.html) * [8.5 排序](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter8/8.5%20排序.html) * [8.6 通用集合库](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter8/8.6%20通用集合库.html) * [8.7 新集合](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter8/8.7%20新集合.html) * [8.8 总结](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter8/8.8%20总结.html) * [8.9 练习](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter8/8.9%20练习.html) * [第9章 违例差错控制](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter9/第9章%20违例差错控制.html) * [9.1 基本违例](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter9/9.1%20基本违例.html) * [9.2 违例的捕获](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter9/9.2%20违例的捕获.html) * [9.3 标准Java违例](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter9/9.3%20标准Java违例.html) * [9.4 创建自己的违例](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter9/9.4%20创建自己的违例.html) * [9.5 违例的限制](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter9/9.5%20违例的限制.html) * [9.6 用finally清除](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter9/9.6%20用finally清除.html) * [9.7 构建器](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter9/9.7%20构建器.html) * [9.8 违例匹配](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter9/9.8%20违例匹配.html) * [9.9 总结](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter9/9.9%20总结.html) * [9.10 练习](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter9/9.10%20练习.html) * [第10章 Java IO系统](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter10/第10章%20Java%20IO系统.html) * [10.1 输入和输出](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter10/10.1%20输入和输出.html) * [10.2 增添属性和有用的接口](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter10/10.2%20增添属性和有用的接口.html) * [10.3 本身的缺陷:RandomAccessFile](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter10/10.3%20本身的缺陷:RandomAccessFile.html) * [10.4 File类](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter10/10.4%20File类.html) * [10.5 IO流的典型应用](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter10/10.5%20IO流的典型应用.html) * [10.6 StreamTokenizer](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter10/10.6%20StreamTokenizer.html) * [10.7 Java 1.1的IO流](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter10/10.7%20Java%201.1的IO流.html) * [10.8 压缩](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter10/10.8%20压缩.html) * [10.9 对象序列化](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter10/10.9%20对象序列化.html) * [10.10 总结](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter10/10.10%20总结.html) * [10.11 练习](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter10/10.11%20练习.html) * [第11章 运行期类型鉴定](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter11/第11章%20运行期类型鉴定.html) * [11.1 对RTTI的需要](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter11/11.1%20对RTTI的需要.html) * [11.2 RTTI语法](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter11/11.2%20RTTI语法.html) * [11.3 反射:运行期类信息](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter11/11.3%20反射:运行期类信息.html) * [11.4 总结](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter11/11.4%20总结.html) * [11.5 练习](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter11/11.5%20练习.html) * [第12章 传递和返回对象](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter12/第12章%20传递和返回对象.html) * [12.1 传递句柄](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter12/12.1%20传递句柄.html) * [12.2 制作本地副本](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter12/12.2%20制作本地副本.html) * [12.3 克隆的控制](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter12/12.3%20克隆的控制.html) * [12.4 只读类](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter12/12.4%20只读类.html) * [12.5 总结](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter12/12.5%20总结.html) * [12.6 练习](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter12/12.6%20练习.html) * [第13章 创建窗口和程序片](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter13/第13章%20创建窗口和程序片.html) * [第14章 多线程](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter14/第14章%20多线程.html) * [14.1 反应灵敏的用户界面](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter14/14.1%20反应灵敏的用户界面.html) * [14.2 共享有限的资源](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter14/14.2%20共享有限的资源.html) * [14.3 堵塞](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter14/14.3%20堵塞.html) * [14.4 优先级](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter14/14.4%20优先级.html) * [14.5 回顾runnable](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter14/14.5%20回顾runnable.html) * [14.6 总结](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter14/14.6%20总结.html) * [14.7 练习](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter14/14.7%20练习.html) * [第15章 网络编程](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter15/第15章%20网络编程.html) * [15.1 机器的标识](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter15/15.1%20机器的标识.html) * [15.2 套接字](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter15/15.2%20套接字.html) * [15.3 服务多个客户](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter15/15.3%20服务多个客户.html) * [15.4 数据报](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter15/15.4%20数据报.html) * [15.5 一个Web应用](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter15/15.5%20一个Web应用.html) * [15.6 Java与CGI的沟通](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter15/15.6%20Java与CGI的沟通.html) * [15.7 用JDBC连接数据库](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter15/15.7%20用JDBC连接数据库.html) * [15.8 远程方法](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter15/15.8%20远程方法.html) * [15.9 总结](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter15/15.9%20总结.html) * [15.10 练习](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter15/15.10%20练习.html) * [第16章 设计范式](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter16/第16章%20设计范式.html) * [16.1 范式的概念](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter16/16.1%20范式的概念.html) * [16.2 观察器范式](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter16/16.2%20观察器范式.html) * [16.3 模拟垃圾回收站](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter16/16.3%20模拟垃圾回收站.html) * [16.4 改进设计](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter16/16.4%20改进设计.html) * [16.5 抽象的应用](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter16/16.5%20抽象的应用.html) * [16.6 多重派遣](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter16/16.6%20多重派遣.html) * [16.7 访问器范式](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter16/16.7%20访问器范式.html) * [16.8 RTTI真的有害吗](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter16/16.8%20RTTI真的有害吗.html) * [16.9 总结](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter16/16.9%20总结.html) * [16.10 练习](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter16/16.10%20练习.html) * [第17章 项目](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter17/第17章%20项目.html) * [17.1 文字处理](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter17/17.1%20文字处理.html) * [17.2 方法查找工具](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter17/17.2%20方法查找工具.html) * [17.3 复杂性理论](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter17/17.3%20复杂性理论.html) * [17.4 总结](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter17/17.4%20总结.html) * [17.5 练习](https://alleniverson.gitbooks.io/thinking-in-java/content/chapter17/17.5%20练习.html) * [附录A 使用非JAVA代码](https://alleniverson.gitbooks.io/thinking-in-java/content/附录/附录A%20使用非JAVA代码.html) * [附录B 对比C++和Java](https://alleniverson.gitbooks.io/thinking-in-java/content/附录/附录B%20对比C++和Java.html) * [附录C Java编程规则](https://alleniverson.gitbooks.io/thinking-in-java/content/附录/附录C%20Java编程规则.html) * [附录D 性能](https://alleniverson.gitbooks.io/thinking-in-java/content/附录/附录D%20性能.html) * [附录E 关于垃圾收集的一些话](https://alleniverson.gitbooks.io/thinking-in-java/content/附录/附录E%20关于垃圾收集的一些话.html) * [附录F 推荐读物](https://alleniverson.gitbooks.io/thinking-in-java/content/附录/附录F%20推荐读物.html) ## [Java编程思想视频教程](https://itvedios.github.io/2017/11/29/后端开发/Java/猎豹网校Java编程思想视频教程/) ![](http://oqn6ggw87.bkt.clouddn.com/Java编程思想初级教程.png) ![](http://oqn6ggw87.bkt.clouddn.com/Java编程思想中级教程.png) ![](http://oqn6ggw87.bkt.clouddn.com/Java编程思想高级教程.png) ## 关注我 - Email:<619888095@qq.com> - CSDN博客:[Allen Iverson](http://blog.csdn.net/axi295309066) - 新浪微博:[AndroidDeveloper](http://weibo.com/u/1848214604?topnav=1&wvr=6&topsug=1&is_all=1) - GitHub:[JackChan1999](https://github.com/JackChan1999) - GitBook:[alleniverson](https://www.gitbook.com/@alleniverson) - 个人博客:[JackChan](https://jackchan1999.github.io/) 如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作! | 微信赞赏支持 | 支付宝赞赏支持 | | :--------------------------------------: | :--------------------------------------: | | | |