티스토리 뷰

 

Q. 싱글턴으로 객체를 제공하고 plus함수를 호출하여 출력하라.

 

 

package exam;

class Sub{
	   private static Sub s = new Sub();
	   public static Sub getinstance() 
       {
		   return s;
	   }
		   
	   int count = 99;
	   public int count_plus( )
       {
	     return count++;
	    }
	   
	}
public class exam7
{
	   public static void main(String[] args)
       {
		   Sub tmp = Sub.getinstance();
		   
	    
	     
	     System.out.println("count변수의 값은:" + tmp.count_plus() +"입니다");
	   }
	}

 

 

 

 

 

singleton 패턴

 

특정 클래스의 인스턴스가 하나만 만들어지고, 어디서든지 그 인스턴스에 접근할 수 있도록 하는 패턴이다.

 

 

 

 

아래의 메서드를 사용하여 Sub 클래스의 인스턴스에 접근할 수 있다.

자신의 클래스로 자신을 생성한다. 

이 메서드의 반환값은 참조변수 s로 Sub 클래스의 인스턴스를 참조한다

.

class Sub{
	   private static Sub s = new Sub();
	   public static Sub getinstance() 
       {
		   return s;
	   }

 

 

 

 

아래의 코드를 통해 Sub 클래스의 getinstance()메서드를 통하여 Sub 클래스의 인스턴스를 얻고, 그것을 tmp 변수에 담는다. 

 

getinstance()함수를 통해 리턴 s를 받고 s는 참조변수이자 Sub클래스의 주소 이기 때문에 tmp.함수명(); tmp.변수명; 을 통하여 호출할 수 있다.

		   Sub tmp = Sub.getinstance();
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday