메뉴 건너뛰기

?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄 첨부
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄 첨부

디자인 패턴(Design Pattern) 중 싱글톤(Singleton) 패턴은 특정 클래스에 대한 인스턴스를 단 한 번만 Static 메모리 영역에 할당하고 해당 클래스에 대한 생성자를 여러 번 호출하더라도 최초에 생성된 객체를 반환하는 디자인 패턴입니다. 즉 애플리케이션의 특정 클래스에 대한 유일 객체를 보장하는 디자인 형태라고 볼 수 있습니다. 

 

일반적으로 싱글톤 패턴이 적용된 클래스에 대한 new 연산을 수행하더라도 이미 한번 할당된 메모리 영역의 인스턴스를 사용하기 때문에 무분별한 new 연산으로 인한 메모리 낭비를 방지 할 수 있습니다. 안드로이드 스튜디오에서는 클래스 파일을 생성하는 시점에 자동으로 싱글톤 패턴이 적용된 클래스 형태로 파일을 생성해줍니다. 

public class MovieDatabaseManager {

    private static MovieDatabaseManager myDBManager = null;

	//MovieDatabaseManager 싱글톤 패턴으로 구현
    public static MovieDatabaseManager getInstance(Context context)
    {
        if(myDBManager == null)
        {
            myDBManager = new MovieDatabaseManager(context);
        }

        return myDBManager;
    }
}

1. Android Studio 자동 생성

 

 

▼ 클래스 파일을 생성하고자 하는 Directory에서 우 클릭을 통해 [New]-[Java class] 메뉴를 클릭합니다.

 

 

 

▼ 생성하는 class 파일의 Class Name을 지정하고 Kind Tab을 열어 Singleton을 선택해줍니다. 그 다음 OK 버튼을 클릭하면 아래와 같이 자동으로 싱글톤 패턴이 적용된 클래스가 생성되는 것을 확인할 수 있습니다.

 

 

 

 

public class sample {
    private static final sample ourInstance = new sample();

    public static sample getInstance() {
        return ourInstance;
    }

    private sample() {
    }
}

List of Articles
번호 제목 날짜 조회 수
197 MediaPlayer 클래스 사용법 file 2018.10.02 1803
196 prepend(),append(),before(),after() 메서드 2014.10.20 7361
195 ScrollView의 활용 2015.07.16 6530
194 setContentView()와 레이아웃 전개자(LayoutInflater) 2021.03.31 266
193 TextureView를 이용한 카메라 Preview 좌우 반전 2015.06.10 14235
192 This Handler class should be static or leaks might occur 시 해결법 2020.12.14 240
191 URL을 이용해서 이미지 다운로드 하기 2015.07.16 7407
190 URL을 이용해서 이미지 다운로드 하기 (멀티 쓰레드 이용) file 2015.07.16 8992
189 ViewFlipper 사용하기 file 2015.07.16 9631
188 Virtual Device , 디자인 화면 file 2021.03.31 260
187 Volley 로 웹요청하고 응답받기1 - Get방식 file 2020.12.14 348
186 Volley 로 웹요청하고 응답받기2 - Post방식 , 로그인-회원가입 (php,mysql 연동) file 2020.12.14 1431
185 Volley 로 웹요청하고 응답받기3 - Get방식 , json 읽기 (php,mysql) file 2020.12.14 377
184 Volley 이용시에 한글 깨질때 UTF-8로 변경 2020.12.14 346
183 WebView 작업할때 Net::ERR_UNKNOWN_URL_SCHEME 에러 발생할때 (전화걸기,문자보내기 안된다) 2020.12.14 1069
182 WebView 줌 컨트롤러 가리기 2014.08.28 6316
181 WebView를 사용할때 HttpClient를 이용한 Session 유지 2018.12.27 4381
180 WebView에서 카메라 및 이미지 업로드 (선택적용가능) file 2020.12.14 2702
179 WIFI 신호세기 강도 측정하기 2014.08.28 11243
178 XmlPullParser 를이용하여 데이터 가져와보기!! 2014.08.28 7221
Board Pagination Prev 1 2 3 4 5 6 7 8 9 10 ... 13 Next
/ 13

하단 정보를 입력할 수 있습니다

© k2s0o1d4e0s2i1g5n. All Rights Reserved