여기를 보겠습니다.
먼저 특정 인스턴스가 아닌 Class
과 관련된 정적 메소드 (정적 변수와 관련하여)를 기억하십시오. 정적 메서드는 인스턴스를 만들지 않아도 존재합니다.
는이 작업을 수행 정적 메서드에 액세스하려면 :
ClassName.staticMethodName(args)
자바는 또한 방법이 있는지에 혼란을 만들고 당신이 그러나 이것은 권장하지 않습니다, (객체) 인스턴스를 사용하여 정적 변수에 액세스 할 수 있습니다,하지만
정적인지 아닌지. 질문에 대한
이제
objectName.staticMethodName(args)
는 :
객체가 생성
, 그것은 정적 멤버를받을 않으며, 그 값을 변경할 수 있습니다?
정적 멤버는 정의 클래스하지 개체로 존재한다. 정적 멤버가 가변 변수 인 경우에는 그 값을 확실히 변경할 수 있습니다. 모든 사람 (클래스의 고유 한 객체, 다른 객체, 다른 정적 메서드)은 동일한 값을 보게됩니다. 고정 부재는 객체가 필요하지 않기 때문에
, 어떤 객체에 대해 동일? (즉, 하나에서 변경, 다른에서 변경).
예. 다시 말해, 정적 멤버는 객체가 아닌 클래스와 연결된다는 것을 반복하면서 혼자 반복합니다.
는 기본적으로 어떻게 정적 멤버 객체로 구현하고, 그들이 어떻게 변경합니까? 정적 메서드로만 조작 할 수 있습니까?
오 남자,이 피로 해지고있다 : 정적 멤버는 개체에서 구현되지 않습니다. 그것들은 다른 정적 및 비 정적 방법 (기본적으로 어디서든 사용 권한이 있음)에서 조작 할 수 있습니다. 그러나 정적 멤버는 인스턴스를 정의하지 않으면 인스턴스 변수를 볼 수 없습니다.