java
jeffry_xu
开源软件天梯(tianti)作者。http://www.oschina.net/p/tianti。
展开
-
设计模式(二)单例模式(创建型)
使用场景: 一个类只能创建一个实例对象。如读取服务器配置文件的类,由单个实例对象直接读取。 实现流程: (1)、定义一个私有变量; (2)、将构造函数私有化; (3)、提供一个获取实例的公用方法; 下面列出几种常见的实现模式,仅供参考: 饿汉式单例:在类创建的时候就初始化实例对象,每次调用的时候都原创 2016-09-29 14:52:42 · 369 阅读 · 0 评论 -
设计模式(三)建造者模式(创建型)
定义:将一个复杂的对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。 使用场景: 创建的产品有复杂的内部结构,且创建的产品有较多的共同点,其组成部分相似。隔离复杂对象的创建,使得相同的过程可以创建不同的产品。 与抽象工厂的区别: 在建造者模式里,有个指导者,由指导者来管理创造者,用户是与指导者联系的,指导者联系创建者得到最后的产品。原创 2016-09-29 17:50:35 · 453 阅读 · 0 评论 -
设计模式(九)模板方法模式
定义:定义一个操作中算法的框架,而将一些步骤延迟到子类中。模板方法模式使得子类可以在不改变一个算法的结构即可重新定义该算法的某些特定步骤。 结构: 模板抽象类:在抽象类中定义了一系列基本操作,这些基本操作可以是具体的,也可以是抽象的。其子类可以重定义或实现这些基本操作。同时,抽象类中实现了一个模板方法,用于定义一个算法的框架。模板方法可以调用抽象类中的基本方法。模板方法原创 2016-12-22 17:51:10 · 451 阅读 · 0 评论 -
JVM学习笔记(三)JAVA中四种引用浅析
JAVA中的引用分成4种,分别是强引用(Strong Reference)、软引用(Soft Reference)、弱引用(Weak Reference)、虚引用(Phantom Reference)。这四种引用强度依次逐渐减弱。 强引用:类似Object obj = new Object()这类的引用,只要强引用还存在,垃圾收集器永远不会回收。如果内存空间不够了,JVM会抛出OutOf原创 2017-01-03 09:43:40 · 400 阅读 · 0 评论 -
JVM学习笔记(四)垃圾收集算法
垃圾收集(Garbage Collection,GC)需要考虑的3件事情: 1、哪些内存需要回收? 2、什么时候回收? 3、怎么回收? 由于垃圾收集算法的实现涉及大量的程序细节,且各个平台的虚拟机操作内存又各不相同。这里只是记录下几种算法的思想: 1、标记-清除算法 这是最基础的收集算法,算法分为“标记”和“清除”两个阶段:首先标记出所有需要回收的对象,在标记完成后统一回收所有被原创 2017-01-03 10:34:49 · 322 阅读 · 0 评论 -
String和String Pool解析
本文先说明下String和String Pool的概念,然后再结合几个常见的例子来说明下String和String Pool的一些特性,最后再总结下这几个例子所得出的规律。 1、不可变的String String的底层实际上是使用private final char[] value来实现字符串的存储的,就是说String对象一旦创建之后,就不能再修改这个对象存储的字符串内容。正因为原创 2017-01-16 10:38:46 · 1700 阅读 · 0 评论 -
Java程序员进阶学习,你知道多少?
文章来源于我的微信公众号(javaTianti) 本文结合其他网友的一些分享和经验,为梯友们整理出不同阶段学习的一个方向,仅供参考。学习的方式和途径千万种,愿梯友们找到最符合自己的一条成长之路。 一、JAVA编程入门级(语言篇) 这个阶段的JAVA学员对基础掌握还是不够牢固的,这个时候应该尽量掌握JAVA的语言原创 2017-05-21 12:06:57 · 1992 阅读 · 1 评论