난 당신이 JFrame의에서이 작업을 수행 할 수 있습니다 왜 실제 이유가 무엇인지 궁금하네요 :자바 슈퍼 클래스를 호출하고 사용하는 표준 방법
super("My Frame");
그리고 같은입니다 :
setTitle("My Frame");
나는 그들이 똑같은 일을하고 있다는 것을 이해하지만 실제로 각각에 대해 어떤 일이 벌어지고 있는가? 상속 된 메서드를 단순히 사용하는 대신 수퍼 클래스를 호출하는 이유는 무엇입니까?
난 당신이 JFrame의에서이 작업을 수행 할 수 있습니다 왜 실제 이유가 무엇인지 궁금하네요 :자바 슈퍼 클래스를 호출하고 사용하는 표준 방법
super("My Frame");
그리고 같은입니다 :
setTitle("My Frame");
나는 그들이 똑같은 일을하고 있다는 것을 이해하지만 실제로 각각에 대해 어떤 일이 벌어지고 있는가? 상속 된 메서드를 단순히 사용하는 대신 수퍼 클래스를 호출하는 이유는 무엇입니까?
JFrame
에서 그것에 대해 더 배울 수있는 당신이 그것을 따르는 경우 생성자에서 말하는 곳
public JFrame(String title) throws HeadlessException {
super(title);
frameInit();
}
, 당신은 결국 java.awt.Frame
클래스에 도달라는 생성자가 :
public Frame(String title) throws HeadlessException {
init(title, null);
}
초기화 방법 :
private void init(String title, GraphicsConfiguration gc) {
this.title = title;
SunToolkit.checkAndSetPolicy(this, false);
}
결론은 특정 생성자를 호출하기 때문에 super를 사용하는 것입니다. 주어진 문자열을받지 못하는 다른 JFrame
생성자 중 하나를 사용하는 경우 제안한대로 수동으로 제목을 설정할 수 있습니다.
당신이 super("My Frame")
슈퍼 클래스의 생성자를 호출 할 때 말을 할 때.
그리고 setTitle("My Frame")
라고 할 때 바로 설정 제목입니다.
당신은 http://docs.oracle.com/javase/tutorial/java/IandI/super.html