[JAVA] getter와 setter를 사용하는 이유
2024. 2. 20. 13:15ㆍ언어(Language)/JAVA
일반적으로 프로그래밍을 할 때, 객체들의 데이터(필드)를 외부에서 직접적으로 접근하는 것을 막아놓는다.
필드들을 private 접근 제한자로 막아두고, 각 필드의 Getter, Setter로 접근하는 방식을 사용한다.
이렇게 프로그램을 하는 이유는 객체의 무결성을 보장하기 위해서이다.
예를 들어 Man이라는 클래스에 weight(몸무게)라는 필드가 존재할 때, weight는 0보다 작을 수 없으나,
외부에서 직접적으로 접근할 경우, weight에 -100이라는 값을 줌으로써 객체의 무결성이 깨지는 일이 발생한다.
클래스의 필드에 직접 접근하는 것을 막기 위해서 getter와 setter를 사용한다.
Getter & Setter 사용 방법
이를 방지하기 위해, 필드를 private로 만들어 외부의 접근을 제한한 후,
Setter를 사용해 전달받은 값을 내부에서 가공해 필드에 넣어주는 방식을 사용한다.
마찬가지로 필드 값을 가져올 때에도,
Getter를 사용해 본 필드의 값을 숨긴 채 내부에서 가공된 값을 꺼내서 사용하면 된다.
'언어(Language) > JAVA' 카테고리의 다른 글
[JAVA] Map & HashMap (1) | 2024.02.20 |
---|---|
[JAVA] 제네릭(Generic)이란? (0) | 2024.02.20 |
[JAVA] Long과 long의 차이 (0) | 2024.02.20 |
[JAVA] 생성자(Constructor)와 초기화 (0) | 2024.02.19 |
[JAVA] StringBuilder 사용법과 주요 메소드 (0) | 2024.02.19 |