본문 바로가기
프로그래밍 언어/JAVA

[JAVA] Getter / Setter

by E145 2021. 2. 4.
반응형

Getter / Setter

 

Getter / Setter 란?

 

 - 외부에서 객체의 데이터를 마음대로 접근하는 경우 무결성을 해칠 수 있다.

 

 - 외부에서 데이터를 접근하지 못하도록 설정하고, 데이터를 접근하고 싶은 경우에는

   직접 접근이 아닌 메소드를 통해 접근, 조작할 수 있도록 한다.

 

 - Getter를 이용하여 외부에서 적절한 데이터를 접근할 수 있도록 만들어준다.

 

 - Setter를 이용하여 외부에서 적절한 데이터를 저장할 수 있도록 만들어준다.

 

 - 객체 지향 프로그래밍에서는 메소드를 이용하여 데이터를 변경하는 방법을 선호한다.

 

 


 

Getter / Setter 작성 방법

 

 - 클래스의 필드의 멤버 변수를 private로 설정한다.

 

 - 데이터를 외부에서 입력 받는 경우에는 setter메소드와 매개변수로 입력 받는 데이터를 작성하면 된다.

 

 - 데이터를 외부로 출력하는 경우에는 getter 메소드를 작성하고, 해당 데이터를 return하면 된다.

 

 - 일반적으로 필드 타입이 boolean인 경우에는 get,set 대신 is를 사용하는것이 관례이다.

 

 

 


 

 

Getter / Setter 예시

public class Main {

    public static void main(String[] args) {
        getsetTest test = new getsetTest();
        test.setAge(-1);
        test.setAge(20);
        System.out.println(test.getAge());
    }


}

class getsetTest{
    private int age;
    public void setAge(int age){
        if(age<1){
            System.out.println("적절한 데이터 아닙니다.");
        }
        this.age = age;
    }

    public int getAge() {
        return this.age;
    }
}

 

 - 예시와 같이 데이터의 값을 입, 출력만 하는 것이 아니라 해당 데이터의 유효성 검증도 할 수 있다.

 

 

 

 

 

반응형

댓글