2016년 9월 19일 월요일

40day / WEB / Singleton Design Pattern

http://www.noesispoint.com

  • Singleton Design Pattern

시스템 상에서 단 한번 객체를 생성하고 공유해서 사용하고자 할 때 적용하는 패턴
외부에서 객체 생성을 할 수 없도록 차단한다
불필요한 객체 생성을 막아서 시스템 자원을 절약한다
하나의 인스턴스만생성하도록 구현할 수 있다

  • 적용방법
static
변수에 한번 생성한 객체의 주소값을 할당한다

public static
메서드로 외부에 한번 생성한 자신의 객체 주소값을 공유한다

private 생성자(Constructor)
를 정의해 외부에서 객체 생성할 수 없도록 차단한다


ex)
class Singleton {
    * static 은 method area 에 한번 초기화 된다 
    private static Singleton instance = new Singleton();
    * private 으로 명시해 외부에서 생성못하도록 막는다
    private Singleton(){     }
    * 외부에서는 객체 생성을 못하되 한번 생성한 객체의 
      주소값을 반환받을 수 있다
    * static method로 현 객체 주소값 공유
    public static Company getInstance(){
        if( instance == null ) {
            instance = new Singleton();
        }
        return instance;
    }
}
cs

Related Posts:

  • 2day / SE / Object-Orientd https://en.wikibooks.org 소프트웨어 개발 과정 (개발 방법론 중 waterfall 폭포수 모델에 기반) 요구수집 ->분석 -> 설계 -> 구현 -> 테스트 객체지향 (Object-Oriented) 시스템 분… Read More
  • 4day / SE / Constructor http://www.javatpoint.com this keyword : 현재 자기 자신의 객체를 가르키는 자바 키워드(예약어) this.변수명 --> 현 객체의 변수를 가르킨다 ex) private String name;//&… Read More
  • 22day / SE / Thread Thread :  프로세스 내의 세부적 실행 단위  참고) 사전적 의미로는 실 (여러 개의 실이 모여 옷감을 구성) process : 현재 실행중인 프로그램  multi-processing : 다수의 프로세스가 실행  mu… Read More
  • 3day / SE / method http://www.9lessons.info 기본문법 [접근제어자] 리턴타입 메서드명([매개변수]){ 기능구현부 [return value] } ex) public void eat(){ <--리턴값이 없을때&… Read More
  • 1day / SE / start 탐색기 확장자 보이게 하기 , 숨김파일 표시 설정파일들을 모두 보기 위하여 pc 계정명이 한글일 경우 영문으로 변경 또는 포맷해야한다 DB 설치시 문제가 생길 수 있다 jdk 설치 ( www.oracle.com 또는 java.sun.com … Read More

0 개의 댓글:

댓글 쓰기