?
//單子設計模式要點:
//1、所有的構造函數必須被聲明為私有的(private),而且必須至少聲明一個構造函數
//2、提供一個public static 方法能夠訪問創建的類
//單子設計模式例子?
//單子設計模式要點:
//1、所有的構造函數必須被聲明為私有的(private),而且必須至少聲明一個構造函數
//2、提供一個public static 方法能夠訪問創建的類
package com.sinojava.three;
class Singlton {
????private static Singlton singlton=null;
????private int x ;
????private Singlton( int x) {
????????this.x=x;
????}
????public static Singlton getObject(int x) {
????????if (singlton==null) {
????????????singlton=new Singlton(x);
????????}
????????return singlton;
????}
????public int getValue() {
????????return this.x;
????}
????public? void setValue(int i) {
????????this.x=i;
????}
};
class Singlton_static {
????private static Singlton_static singlton=new Singlton_static(5) ;
????private int x ;
????private Singlton_static( int x) {
????????this.x=x;
????}
????public static Singlton_static getObject(int x) {
????????return singlton;
????}
????public int getValue() {
????????return this.x;
????}
????public void setValue(int i) {
????????this.x=i;
????}
};
public class? TestSinglton {
????public static void main(String[] args) {
????????Singlton a=Singlton.getObject(1);
????????Singlton_static b =Singlton_static.getObject(1);
????????System.out.println(b.getValue());
????????System.out.println(a.getValue());
????????System.out.println("Hello World!");
????}
}
?