首页
Python
Java
IOS
Andorid
NodeJS
JavaScript
HTML5
【
Java与模式读书笔记
】的更多相关文章
Java与模式读书笔记
>设计目标:可扩展性,灵活性,可插入性. >设计原则 ● Open Closed Principle 开闭原则 对扩展开放,对修改关闭. 对面向对象的语言来说,不可以更改的是系统的抽象层,而可以扩展的是系统的实现层. ●里式代换原则 任何基类可以出现的地方,子类一定可以出现. ●依赖倒转原则 要依赖于抽象,不要依赖于实现. ●合成/组合原则 尽量使用复合而不是继承 ●迪米特法则 一个软件的实体应该减少与其他实体发生相互作用. ●接口隔离原则 应该提供小的单独接口. >抽象类 ●抽象类应该…
图解java 多线程模式 读书笔记
第1章"Single Threaded Execution模式--能通过这座桥的只有一个人" 该模式可以确保执行处理的线程只能是一个,这样就可以有效防止实例不一致. 第⒉章"Immutable模式--想破坏也破坏不了" Immutable模式,即实例一旦创建完毕,其内容便不可更改的模式.在该模式下,由于实例不会不一致,所以无需执行互斥处理,程序性能也能提高. 第3章"Guarded Suspension模式--等我准备好哦" Guarded Su…
《深入java虚拟机》读书笔记之垃圾收集器与内存分配策略
前言 该读书笔记用于记录在学习<深入理解Java虚拟机--JVM高级特性与最佳实践>一书中的一些重要知识点,对其中的部分内容进行归纳,或者是对其中不明白的地方做一些注释.主要是方便之后进行复习. 目录 <深入java虚拟机>读书笔记之Java内存区域 垃圾收集器与内存分配策略 哪些内存需要垃圾回收 在上一节中有提到在运行时数据区域包括:堆.虚拟机栈.本地方法栈.程序计数器.方法区(JDK1.7及之前).元空间(JDK1.8及之后).在这些区域中,程序计数器占用内存极小,可以忽略:栈…
《大型网站系统与Java中间件》读书笔记 (中)
前言 只有光头才能变强. 文本已收录至我的GitHub仓库,欢迎Star:https://github.com/ZhongFuCheng3y/3y 回顾上一篇: <大型网站系统与Java中间件>读书笔记(一) 这周周末读了第四章,现在过来做做笔记,希望能帮助到大家. 注:在看这篇文章之前,强烈建议先看看我之前写过的一篇SpringCloud入门文章:外行人都能看懂的SpringCloud,错过了血亏!.看完再回头看这篇文章,你会发现:这本书讲的设计与实现在SpringCloud中几乎都有对应的…
JAVA编程思想读书笔记(五)--多线程
接上篇JAVA编程思想读书笔记(四)--对象的克隆 No1: daemon Thread(守护线程) 参考http://blog.csdn.net/pony_maggie/article/details/42441895 daemon是相于user线程而言的,可以理解为一种运行在后台的服务线程,比如时钟处理线程.idle线程.垃圾回收线程等都是daemon线程. daemon线程有个特点就是"比较次要",程序中如果所有的user线程都结束了,那这个程序本身就结束了,不管daemon是否…
JAVA编程思想读书笔记(四)--对象的克隆
接上篇JAVA编程思想读书笔记(三)--RTTI No1: 类的克隆 public class MyObject implements Cloneable { int i; public MyObject(int i) { this.i = i; } @Override protected Object clone() { Object o = null; try { o = super.clone(); } catch (CloneNotSupportedException e) { Syst…
JAVA编程思想读书笔记(三)--RTTI
接上篇JAVA编程思想读书笔记(二) 第十一章 运行期类型判定 No1: 对于作为程序一部分的每个类,它们都有一个Class对象.换言之,每次写一个新类时,同时也会创建一个Class对象(更恰当的说,是保存在一个完全同名的.class文件中).在运行期,一旦我们想生成那个类的一个对象,用于执行程序的Java虚拟机(JVM)首先就会检查那个类型的Class对象是否已经载入.若尚未载入,JVM就会查找同名的.class文件,并将其载入.所以Java程序启动时并不是完全载入的,这一点与许多传统语言都不…
JAVA编程思想读书笔记(二)--容器
接上篇JAVA编程思想读书笔记(一) 第八章.对象的容纳 No1: java提供了四种类型的集合类:Vector(矢量).BitSet(位集).Stack(堆栈).Hashtable(散列表) No2: 为什么不能将基本数据类型置入集合里? 首先,集合的存在就是为了方便对多个对象的操作才出现的,集合是存储对象最常用的一种方式,也就是说,集合的从有到无都是因为对象,人们发现要保存多个对象很麻烦,于是便发明了集合,集合是依赖对象而生的,所以就对基本数据类型"不感兴趣",但是,现在基本数据类…
《深入java虚拟机》读书笔记之Java内存区域
前言 该读书笔记用于记录在学习<深入理解Java虚拟机--JVM高级特性与最佳实践>一书中的一些重要知识点,对其中的部分内容进行归纳,主要是方便之后进行复习. 运行时数据区域 Java虚拟机在执行过程中会将其管理的内存划分为多个不同的数据区域.其中一些区域随着虚拟机启动而创建,一些区域生命周期则依赖用户线程的启动和结束. 下面是JDK1.7 程序计数器 是一块较小的内存空间,用于记录当前线程所执行的字节码的行号,在执行过程中通过改变计数器的值来选择下一条被执行的指令.分支.循环.异常处理等都通…
Java并发编程读书笔记(一)
----------------------------------------------<Java并发编程实战>读书笔记------------------------------------------------------------------------------ 第二章 线程安全性 java同步 1.sychronized 2.volatile类型 3.显示锁 4.原子变量性能优化之原则:首先保证代码能正确运行,然后再提高代码速度.并且,只是当性能测试结果和应用需求需要…