앱 만들기/안드로이드

Getter,Setter 함수란

나도 처음이야 2022. 2. 8.

https://soo0100.tistory.com/1723

 

모델 클래스 란?

모델 클래스란, 실제의 형태를 클래스 형태로 만드는 것을 말한다. 즉, 클래스로 만들어서 데이터를 저장하고 가져오는 역할을 하게 된다. 예를 들어 날씨를 클래스로 만든다면, 일반적으로 지

soo0100.tistory.com

 

지난 시간 모델 클래스의 뼈대를 만들어 보았다.

//날씨를 모델화 한 모델클래스
public class Weather {
    private String city;
    private String temp;
    private String weather;
}

이제 해당 데이터를 사용해보자(데이터를 가져오고, 넣기)

데이터가 캡슐화 즉, private로 외부에서는 보이지 않기 때문에 Getter, Setter 함수를 사용해야 한다.

사실 개발자가 자신이 원하는 이름으로 코딩을 해도 되지만, 코딩 룰 처럼 Getter, Setter 함수가 범용적으로 사용되고 있고 다른 개발자가 보기에도 손쉬운 독해가 가능하기에 해당 형식에 맞추어서 사용해 주는 것이 좋다.

 

단축키는 ALT+Insert 를 누르면 팝업이 뜬다.

Shift 키로 3개 함수를 모두 선택후 OK 키를 선택한다.

그러면 하기 처럼,  Getter,Setter 함수 군이 만들어진다.

//모델 클래스
public class Weather {
    private String city;
    private String temp;
    private String weather;

    public String getCity() {
        return city;
    }

    public void setCity(String city) {
        this.city = city;
    }

    public String getTemp() {
        return temp;
    }

    public void setTemp(String temp) {
        this.temp = temp;
    }

    public String getWeather() {
        return weather;
    }

    public void setWeather(String weather) {
        this.weather = weather;
    }
}

여기에, 디버그 코드를 위해서 toString() 함수도 추가한다.

이 역시 개발자가 직접 만들어도 좋지만 위와 같은 동일한 이유로 안드로이드에서 지원해주는 toString() 함수군을 이용하는 것이 좋다.

참고로, toString() 함수는 모든 클래스가 가지고 있는 기본 메소드이기에

이 경우 함수를 재정의 오버로드 했다고 말할 수 있다.

 

//모델 클래스
public class Weather {
    private String city;
    private String temp;
    private String weather;

    @Override
    public String toString() {
        return "Weather{" +
                "city='" + city + '\'' +
                ", temp='" + temp + '\'' +
                ", weather='" + weather + '\'' +
                '}';
    }

    public String getCity() {
        return city;
    }

    public void setCity(String city) {
        this.city = city;
    }

    public String getTemp() {
        return temp;
    }

    public void setTemp(String temp) {
        this.temp = temp;
    }

    public String getWeather() {
        return weather;
    }

    public void setWeather(String weather) {
        this.weather = weather;
    }
}

Getter,Setter 함수를 손쉽게 만드는 방법을 정리해보았습니다.

해당 내용은 오준석의 될때까지 안드로이드를 공부하면서 학습자가 느끼는 점을 정리한 내용입니다.

감사합니다.

반응형

댓글