티스토리 뷰

Java/개념

JAVA 싱글톤 패턴2

정복잉 2020. 5. 15. 07:46
반응형
package day15;

public class Single {
	
	private Single() {}
	
	private static Single instance = new Single();

	public static Single getInstance() { //set의 값을 없앤다 -> 외부에서 재정의 불가능하게 
		return instance;
	}
	
	public void sayHello() {
		System.out.println("안녕");
	}
}
package day15;

public class SingleMain {
	public static void main(String[] args) {
	day15.Single s = day15.Single.getInstance();    
		//싱글톤 패턴은 new를 선언하지 않는다. new가 없다면, 싱글톤 패턴 생각
//		Single s = new Single();   안되는 이유는 private로 해놨기 때문
		s.sayHello();
	}
}

※개념정리

 

싱글톤 패턴?

하나의 객체만 가지고 있으며, 클래스 내부에서 객체를 생성하고

외부에서는 내부에서 선언한 객체만 공통으로 사용만 할수 있다.

 

싱글톤 패턴 구조

 

1. 생성자를 만든다.

private(혹은 protected) 클래스명( ){ }

private Sun( ) { }

protected Sun( ) { }

 

2.객체를 선언한다.

private static 클래스명 매개변수 = new 클래스명( );

private static Sun s = new Sun( );

 

3.getter을 선언한다.

public static 클래스명 get매개변수( ){

return ; }

public static Sun getS( ){

return ; }

 

외부클래스의 경우

Sun이라는 와부 클래스를 사용시 객체선언을 하지만,

싱글톤패턴일 경우 객체 선언을 못한다.

 

패키지명.클래스명.매개변수 = 패키지명.클래스명.getter( );

day15.Sun s = day15.Sun.getS( );

 

//new선언을 안하고 이렇게 선언 한다.

s.선언할 메서드

 

댓글
반응형
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
TAG more
«   2024/10   »
1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31
글 보관함