Java의 클래스 메소드에서 클래스 속성에 액세스하는 가장 좋은 방법은 항상 궁금합니다.클래스 메서드에서 클래스 특성에 액세스하는 좋은 방법은 무엇입니까?
아래 3 가지 솔루션 (또는 완전히 다른 것 : P) 중 어느 것이 우수 사례인지 빠르게 알 수 있습니까?
public class Test {
String a;
public String getA(){
return this.a;
}
public setA(String a){
this.a = a;
}
// Using Getter
public void display(){
// Solution 1
System.out.println(this.a);
// Solution 2
System.out.println(getA());
// Solution 3
System.out.println(this.getA());
}
// Using Setter
public void myMethod(String b, String c){
// Solution 1
this.a = b + c;
// Solution 2
setA(b + c);
// Solution 3
this.setA(b + c);
}
}
질문은 변수를 표시하는 것이 아니라 클래스 자체에서 멤버 변수에 액세스하는 방법, 즉 직접 액세스하거나 getter 및 setter를 사용하는 방법에 관한 것입니다. – DaveJohnston
클래스 자체에서 변수에 액세스하는 가장 좋은 방법은 직접 액세스하는 것입니다. 변수에 액세스해야하고 공용 설정자/getter를 만들어 변수를 해결해야하는 경우 내부 구현이 노출됩니다! 축하해! 이제 너는 스스로를 가둬 버렸다. 외부 구조가 노출되어 있고 다른 클래스가 접근 자 방식에 의존하기 때문에 더 이상 내부 구조를 변경할 수 없습니다. – bitc