Java 复用代码的两种方式组合与继承. 组合 组合只需将对象引用置于新类中即可. 比如我们有一个B类,它具有一个say方法,我们在A类中使用B类的方法,就是组合. public class B { public void say(){ } } public class A { public void combo(){ B b = new B(); b.say(); } } 在 java编程思想中,还介绍了四种初始化引用的方式. 1.在定义对象的地方. public class Bath{ pr…
2018年1月7日15:45:58 前言 作为学习Java语言的经典之作<Java编程思想>,常常被人提起.虽然这本书出版十年有余,但是内容还是很给力的.很多人说这本书不是很适合初学者,我也是这么觉得(拙见),你最好熟悉一门高级语言,这样比较容易看懂.这本书也许不如国内一些教材那样,知识点精炼.简洁,但是大神Bruce Eckel更多讲的是Java编程思想,深入浅出.曾在某文章中看到过有人把这本书看过十遍,每看一遍都有不同的收获,希望多年后我也有这样的收获. 作为母校的教材(英文版),当我再次…
Java编程思想 这是一个通过对<Java编程思想>(Think in java)第四版进行阅读同时对java内容查漏补缺的系列.一些基础的知识不会被罗列出来,这里只会列出一些程序员经常会忽略或者混淆的知识点. 所列知识点全部都是针对自己个人而言,同时也欢迎大家进行补充. 第一章(对象导论) public class HelloWorld { public static void main(String[] args) { System.out.println("Hello ever…
前言:三年之前就买了<Java编程思想>这本书,但是到现在为止都还没有好好看过这本书,这次希望能够坚持通读完整本书并整理好自己的读书笔记,上一篇文章是记录的第十一章到第十六章的内容,这一次记录的是第十七章到第十八章的内容,主要是集合和I/O内容太多,限于篇幅本文先记录两章内容,本文还是会把自己感兴趣的知识点记录一下,相关示例代码放在码云上了,码云地址:https://gitee.com/reminis_com/thinking-in-java 第十七章:容器深入研究 完整的容器分类法:这张图是…
前言:本文是<Java编程思想>读书笔记系列的最后一章,本章的内容很多,需要细读慢慢去理解,文中的示例最好在自己电脑上多运行几次,相关示例完整代码放在码云上了,码云地址:https://gitee.com/reminis_com/thinking-in-java 第二十一章:并发 基本的线程机制   并发编程使我们可以将程序划分为多个分离的.独立运行的任务.通过使用多线程机制,这些独立任务(也被称为子任务)中的每一个都将由执行线程来驱动.一个线程就是在进程中的一个单一的顺序控制流,因此,单个进…
3.1  更简单的打印语句 学习编程语言的通许遇到的第一个程序无非打印"Hello, world"了,然而在Java中要写成 System.out.println("Hello, world"); 我们都会感觉太冗长了,能不能简单一些呢?静态导入可以省略掉System,就像这样 import static java.lang.System.*; public class Hello { public static void main(String[] args) {…
Java编程思想重点笔记(Java开发必看)   Java编程思想,Java学习必读经典,不管是初学者还是大牛都值得一读,这里总结书中的重点知识,这些知识不仅经常出现在各大知名公司的笔试面试过程中,而且在大型项目开发中也是常用的知识,既有简单的概念理解题(比如is-a关系和has-a关系的区别),也有深入的涉及RTTI和JVM底层反编译知识. 1. Java中的多态性理解(注意与C++区分) Java中除了static方法和final方法(private方法本质上属于final方法,因为不能被子…
今天继续读<java 编程思想>,读到了复用类一章,看到总结写的很好,现贴上来,给大家分享. 继承和组合都能从现有类型生成新类型.组合一般是将现有类型作为新类型底层实现的一部分来加以复用,而继承复用的是接口. 在使用继承时,由于导出类具有基类接口,因此它可以向上转型至基类,这对多态来讲至关重要. 尽管面向对象编程对继承极力强调,但在开始一个设计时,一般应优先考虑使用组合(或者可能是代理),只在确实必要时才使用继承.因为组合更具灵活性.此外,通过对成员类型使用继承技术的添加技巧,可以在运行时改变…
Java编程思想,Java学习必读经典,不管是初学者还是大牛都值得一读,这里总结书中的重点知识,这些知识不仅经常出现在各大知名公司的笔试面试过程中,而且在大型项目开发中也是常用的知识,既有简单的概念理解题(比如is-a关系和has-a关系的区别),也有深入的涉及RTTI和JVM底层反编译知识. 1. Java中的多态性理解(注意与C++区分) Java中除了static方法和final方法(private方法本质上属于final方法,因为不能被子类访问)之外,其它所有的方法都是动态绑定,这意味着…
[注:此博客旨在从<Java编程思想>这本书的目录结构上来检验自己的Java基础知识,只为笔记之用] 第十一章 持有对象 11.1 泛型和类型安全的容器>eg: List<String> 容器中可以插入该泛型类子类都可以放置进去11.2 基本概念 (1)Collection. 一个独立元素的序列,这些元素都服从一条或多条规则.List 必须按照插入的顺序保存元素,而Set不能有重复元素 Queue按照排队规则来确定对象产生的顺序 (2)Map. 一组成对的"键值对&…