본문 바로가기

웹 & 앱 꿀 TIP

[android] 싱글톤에 대하여 총정리_ 이것만 보면 나는 싱글톤 마스터

728x90
반응형

하이 먼저 싱글톤이란

 

static변수로 값이 계속 변경되는 함수를 말하는데,

 

예를 들면 

int a = 0;

인 a라는 변수가

a += 1;

를 거치면

a = 1;이 되는 것인데,

 

이 변경된 값이 다른 자바파일에서도 공유가 가능하다는 것이다!

 

한번 더 예를 들면

 

싱글톤자바파일명을 commonData라고 하겠다. 그리고 마지막 값을 가지고 오는 함수는 getinstanse라고 하겠다.

MainActivity.java

commonData.getInstanse.Geta();

commonData.getInstanse.Seta(1);

commonData.getInstanse.Geta();

 

이라고 할 경우

0인 a가 1이 되고 1로 변경되는 것이다.

 

싱글톤 파일은 

위에 생성자를 먼저 만들어주고

public class commonData {
    private String LastImageURL = "";

해당 생성자의 개터 세터를 만들고

public void SetLastImageURL(String url){
    this.LastImageURL = url;
}
public String GetLastImageURL(){
    return LastImageURL;
}

아래의 코드를 넣어주면

private static commonData instance = null;

public static synchronized commonData getInstance(){
    if(null == instance){
        instance = new commonData();
    }
    return instance;
}

완성.

 

이제 어디서는 set을 하고 해당 함수를 get하면 나는 온갖 데이터를 사용할 수 있다.

 

예시로

input박스에 담은 값을 다른 액티비티에 띄우려면

 

Stirng a =인풋박스아이디.getText().toString();

commonData().getInstance().SetText(a);

 

를 하고 다른 액티비티에서는

텍스트뷰아이디.SetText(commonData().getInstance().GetText());

 

를하면 된다.

 

시간이 없어서 대충 썼는데 헷갈리는부분이 있다면 언제든 댓글을 달아주면 하루 내에 답변할 수 있도록 하겠다.

 

그럼 20000!!!

728x90
반응형