나는 다음과 같은 접근 방식의 차이에 관해서는 스윙 창 만드는 궁금 : 주에서 java.awt.EventQueue.invokeLater을()()를 사용하여스윙 창을 초기화 할 수있는 방법의 차이점은 무엇입니까?
- 을;
- main()에서 SwingUtilities.invokeLater()를 사용합니다.
- 스레드로 전혀 신경 쓰지 않고 JFrame 서브 클래스를 인스턴스화하고 main에서 setVisible (true)을 호출하여 Runnable 내에 래핑하지 않고 호출합니다. 이것은 어쨌든 작동하는 것 같습니다.
감사합니다.
"JFrame을 하위 클래스로 만들 필요가 거의 없으며 일반적으로 나쁜 습관입니다." - 이젠 내가 관심있어. NetBeans는 앱 골격을 만들 때 자동으로이 작업을 수행했습니다. 왜 이것이 나쁜 것인가에 대해 자세히 설명해 주시겠습니까? – neuviemeporte
JFrame을 서브 클래 싱하는 것과 관련하여 문제가 보이지 않습니다. 논리적으로 필요한 것이 JFrame의 하위 클래스 인 경우 JFrame의 하위 클래스를 만듭니다 ... –
매우 드물게 JFrame의 * 하위 클래스 *가 필요합니다. 당신처럼'Thread'의 하위 클래스가 거의 필요하지 않습니다. –