다소 이상한 동작이 발생합니다.이 문제가 Java 문제인지 아니면 Eclipse에서만 발생하는지 확신 할 수 없습니다.Java 클래스 메소드가 동일한 클래스 매개 변수의 비공개 필드를 볼 수 있습니다.
여기 ISclass Foo {
private String text;
public void doStuff(Foo f) {
System.out.println(f.text);
}
}
문제는, 왜 접근 f.text입니다 :
다음 코드를 가지고? 그것은 개인 필드이므로 내 논리에 따르면 안된다.하지만 IDE는 그렇게 생각하는 것 같다.
가능한 복제본 [다른 개체의 개인 필드를 복제 할 수있는 이유는 무엇입니까?] (http://stackoverflow.com/questions/976243/why-can-clone-set-a-private-field-on-another- 객체) –
[Java에서 public, default, protected 및 private의 차이점은 무엇입니까?] (http://stackoverflow.com/questions/215497/in-java-whats-the-difference-between-public) -default-protected-and-private) –
기본적으로 한 언어의 규칙이 다른 언어에 적용된다고 가정하지 마십시오. 대신, 사용중인 언어의 규칙을 배우십시오. 이 경우, Java 언어 스펙이'private'의 의미에 대해 말하고있는 것을보십시오. –