Getter 메소드: 클래스의 멤버 변수 값을 반환하는 메소드입니다. 일반적으로 get이라는 접두사를 사용하여 메소드 이름을 짓습니다.
Setter 메소드: 클래스의 멤버 변수 값을 설정하는 메소드입니다. 일반적으로 set이라는 접두사를 사용하여 메소드 이름을 짓습니다.
데이터 캡슐화: 클래스의 멤버 변수를 private으로 선언하여 외부에서 직접 접근하지 못하게 합니다. 이렇게 하면 데이터의 무결성을 유지하고, 클래스 내부 구현을 변경하더라도 외부에 미치는 영향을 최소화할 수 있습니다.
유효성 검사: setter 메소드를 통해 멤버 변수 값을 설정할 때 유효성 검사를 수행할 수 있습니다. 이를 통해 잘못된 값이 설정되는 것을 방지할 수 있습니다.
변경 통지: getter와 setter 메소드를 사용하면 값이 변경될 때 다른 작업을 수행하도록 할 수 있습니다. 예를 들어, 값이 변경될 때 로그를 남기거나 관련된 다른 값을 업데이트할 수 있습니다.
MainEntry.java
package oop_02;
public class MainEntry {
public static void main(String[] args) {
Point pt = new Point();
pt.setX(100);
pt.setY(30);
Rectangle re = new Rectangle();
re.setX(100);
re.setY(30);
re.setX2(50);
re.setY2(30);
re.display();
}
}
Point.java
package oop_02;
public class Point {
private int x,y; //멤버변수
// x getter / setter
public int getX() {return x;}
public void setX(int x) {this.x = x;}
// y getter /setter
public int getY() {return y;}
public void setY(int y) {this.y = y;}
}
Rectangle.java
package oop_02;
public class Rectangle {
private int x, y, x2, y2;
// x getter/setter
public int getX() {return x;}
public void setX(int x) {this.x = x; System.out.println(x);}
// y getter/setter
public int getY() {return y;}
public void setY(int y) {this.y = y; System.out.println(y);}
// x2 getter/setter
public int getX2() {return x2;}
public void setX2(int x2) {this.x2 = x2;}
// y2 getter/setter
public int getY2() {return y2;}
public void setY2(int y2) {this.y2 = y2;}
//output method
public void display() {
System.out.println(x);
System.out.println(y);
System.out.println(x2);
System.out.println(y2);
}
}