十一 java面向对象程序设计(单态设计模式)
十一 java面向对象程序设计(单态设计模式)
/**
* 面向对象之六
* 单态模式设计
* 所谓类的单态设计模式,就是采取一定的方法保证在整个的软件系统中,对某个类只能存在一个对象实例,
* 并且该类只提供一个取得其对象实例的方法。
*/
class Single
{
private static int count = 0;
private Single()//首先将构造机定义成私有的.
{
System.out.println("contructor is calling...");
System.out.println("we creat " + (++count) + " object");
}
private static Single single = new Single();
//在该类内部产生一个对象,并将其定义为static,这样就只有一个对象了.
public static Single getSingle()
//提供一个静态方法(因为对象的引用时static的所以要定义成静态方法),返回这唯一的对象.
{
return single;
}
}
public class SingleTest {
public static void main(String[] args)
{
Single.getSingle();
Single.getSingle();
Single.getSingle();
Single.getSingle();
Single.getSingle();
}
}
/* ouput
contructor is calling...
we creat 1 object
*/
相关文档:
类的初始化和对象初始化是 JVM 管理的类型生命周期中非常重要的两个环节,Google 了一遍网络,有关类装载机制的文章倒是不少,然而类初始化和对象初始化的文章并不多,特别是从字节码和 JVM 层次来分析的文章更是鲜有所见。
本文主要对类和对象初始化全过程进行分析,通过一个实际问题引入,将源代码转换成 JVM 字节码后, ......
定义:定义了算法族,分别封装起来,让它们之间可以互相替换,此模式让算法的变化独立于使用算法的客户。
适用性
许多相关的类仅仅是行为有异。“策略”提供了一种用多个行为中的一个行为来配置一个类的算法。
需要使用一个算法的不同变体。例如,你可能会定义一些反映不容的空间/时间权衡的算法。当这些变体实 ......
A flexible layout configurable with pattern string.
The goal of this class is to format
a LoggingEvent
and return the results as a String. The results depend on the conversion
pattern
.
The conversion pattern is closely related to the conversion pattern of the
printf function in C ......
提起Java内部类(Inner Class)可能很多人不太熟悉,实际上类似的概念在C++里也有,那就是嵌套类(Nested Class),关于这两者的区别与联系,在下文中会有对比。内部类从表面上看,就是在类中又定义了一个类(下文会看到,内部类可以在很多地方定义),而实际上并没有那么简单,乍看上去内部类似乎有些多余,它的用处对于初 ......
八 java面向对象程序设计(构造方法)
/**
* 面向对象之二
* 构造方法(构造机):
*
* 1,构造方法的特征:
* 它具有与类相同的名称;
* 它不含返回值;
* 它不能在方法中用return语句返回一个值
* 注意:在构造方法里不含返回值的概念是不同于“void&rdquo ......