녀석, 나는 간단하지만 도청 질문이 있습니다. 필자가 이해하는 한, static
은 기본적으로 해당 클래스의 모든 단일 인스턴스에 대해이 메소드가 동일 할 것임을 의미합니다. 변경하면이 클래스의 모든 단일 인스턴스에 대해 변경되며 클래스 메소드라고도합니다. 내가 toString()
방법은 특정 형식을 마녀 구현하는 클래스가 있다면 음, 이제 가정 해 봅시다 :toString()을 정적 메서드로 사용할 수없는 이유는 무엇입니까?
public String toString() {
return "(" + x + "," + y + ")";
}
가 정적으로 설정 될 수없는 이유는 무엇
? 이 형식은 해당 클래스의 모든 단일 인스턴스에 대해 동일하므로 ...?
x와 y에 대해 생각해보십시오. 비 정적 필드 인 경우 정적 메서드는 해당 필드에 액세스 할 수 없습니다. –
@PatriciaShanahan 그래서 x와 y가 정적 값이면 toString() 메서드를 정적으로 설정할 수 있다고 말합니까? –
'정적'에 대한 이해는 약간 꺼져 있습니다. 'static '은 적어도 하나의 인스턴스 만 생성된다는 것을 의미합니다 (적어도 변수에 대해서는). 'ClassName.toString() '과 같이 객체를 인스턴스화하지 않고도'static' 변수/메소드에 접근 할 수 있습니다 또한 객체마다 새로운 메소드를 만들 필요가 없으며 모두 동일한 메소드를 사용할 수 있습니다 – Justin