以下代码执行正常:
public static void main(String [] args) {
Runnable r = new Runnable() {
public void run() {
createGUI();
}
} ;
javax.swing.SwingUtilities.invokeLater(r);
}
我很好奇为什么以下代码无法编译:
import javax.swing.SwingUtilities;
public static void main(String [] args) {
Runnable r = new Runnable() {
public void run() {
createGUI();
}
} ;
invokeLater(r);
}
javax.swing.SwingUtilities.invokeLater(r);
和import javax.swing.SwingUtilities; invokeLater(r);
答案 0 :(得分:5)
要在类中引用静态成员,作为简单名称,您需要静态导入:
import static javax.swing.SwingUtilities.*;
以后你可以使用
invokeLater(r);
正常导入import javax.swing.SwingUtilities;
允许您通过简单名称引用类 SwingUtilities
,但不能引用该类的任何成员。所以你可以这样做:
import javax.swing.SwingUtilities;
和
SwingUtilities.invokeLater(r);