Getter와 Setter 함수 이해하기
객체지향 프로그래밍(OOP)에서 Getter와 Setter 함수는 객체의 속성에 접근하고 수정하기 위해 사용됩니다. 이 메서드들은 데이터 캡슐화를 통해 객체의 내부 상태를 보호하고, 속성 접근에 대한 제어를 제공합니다. 함께 자세히 알아봅시다.
Getter란?
Getter 메서드는 속성 값을 반환하는 메서드입니다. 예를 들어, 다음과 같이 사용할 수 있습니다:
public class Person {
private String name;
// Getter 메서드
public String getName() {
return name;
}
}
Setter란?
Setter 메서드는 속성 값을 설정하는 메서드입니다. 다음은 그 예입니다:
public class Person {
private String name;
// Setter 메서드
public void setName(String name) {
this.name = name;
}
}
왜 사용하는가?
Getter와 Setter 메서드를 사용하는 이유는 다음과 같습니다:
- 데이터 보호 및 캡슐화: 속성을 직접 노출하지 않고, 메서드를 통해 접근하게 함으로써 외부에서 객체의 상태를 임의로 변경하지 못하도록 보호합니다.
- 유효성 검사: 속성 값을 설정할 때 유효성 검사를 통해 잘못된 값이 할당되는 것을 방지할 수 있습니다.
- 불변성 유지: 특정 속성은 한 번 설정되면 변경되지 않도록 할 수 있습니다.
- 로깅 및 디버깅: 속성 값이 변경될 때마다 로그를 남기거나 디버깅 정보를 출력할 수 있습니다.
예제 코드
유효성 검사를 추가한 Setter 메서드의 예제입니다:
public class Person {
private int age;
public int getAge() {
return age;
}
public void setAge(int age) {
if (age >= 0) {
this.age = age;
} else {
System.out.println("Invalid age");
}
}
}
'Java' 카테고리의 다른 글
[Java]super 키워드 및 메소드 오버라이딩 (0) | 2024.06.03 |
---|---|
[Java] 클래스 상속 및 Protected 접근 제어자 (0) | 2024.06.03 |
[Java]클래스의 멤버 변수에 데이터를 세팅하는 3가지 방법 (0) | 2024.05.31 |
[Java]자바에서 접근제어자란? (0) | 2024.05.31 |
[Java]생성자 사용법과 생성자 오버로딩 (0) | 2024.05.31 |