디자인 모델 의 단일 모델 학습
2182 단어 디자인 모델 의 단일 모델 학습
원인 1: 요즘 아이들 은 너무 경박 해서 종이 에 코드 를 써 본 적 이 없어 요.
이유 2: 확실히 컴퓨터 에 쓴 적 이 있 습 니 다. 공부 할 때 쓴 적 이 있 습 니 다. 나중에 잊 어 버 리 지 않 아 도 됩 니 다.
일례: 고전적 인 디자인 모델 중 하나 로 면접 을 볼 때 가장 자주 물 어 본다.단 례, 말 그대로 실례 가 유일 하 다.
코드:
package singleton;
/**
* @ : , :
* @ : JavaAlpha
* @ : 2016 1 22 3:19:13
* @ : V1.0
*/
public class SingletonTest {
private String name;
/**
* @param name The name to set.
*/
public void setName(String name) {
this.name = name;
System.out.println("My Name is " + this.name);
}
/**
* Singleton private ,
* ,Singleton getInstance() 。
*/
private SingletonTest(){}
private static SingletonTest singletonTest = null;
/**
*
* .
* @return
*/
public static SingletonTest getSingleton() {
if (null == singletonTest) {
singletonTest = new SingletonTest();
}
return singletonTest;
}
/**
* . ,
* , , 。
*/
private static SingletonTest singletonTest2 = new SingletonTest();
public static SingletonTest getSingleton2() {
return singletonTest2;
}
}
// : , Java private , Java 。 , 。
테스트 클래스:
package singleton;
/**
* @ :
* @ : JavaAlpha
* @ : 2016 1 22 3:32:45
* @ : V1.0
*/
public class SingletonTestMain {
/**
*
* @param args
*/
public static void main(String[] args) {
SingletonTest st1 = SingletonTest.getSingleton();
st1.setName(" ");
SingletonTest st2 = SingletonTest.getSingleton();
st2.setName(" ");
if (st1 == st2) {
System.out.println(" ");
}else {
System.out.println(" ");
}
}
}