當我試圖運行這個Java程序,使一個JTextField:爲什麼我不能調用創建對象的公共方法?
import java.awt.*;
import javax.swing.*;
public class TextField1 extends JFrame{
private final int WIDTH = 320;
private final int HEIGHT = 250;
private FlowLayout flow = new FlowLayout();
private JTextField myOutput = new JTextField();
public TextField1() {
super("My TextField Example");
setSize(WIDTH, HEIGHT);
setLayout(flow);
JTextField myOutput = new JTextField(20);
add(myOutput);
setVisible(true);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
public void createGUI(){
myOutput.setText("I am a text field showing output!");
myOutput.setEditable(false);
}
public static void main(String[]args) {
TextField1 myTextField = new TextField1();
myTextField.createGUI();
System.out.println(myTextField.myOutput.getText());
}
}
看來,如果不註冊createGUI()方法。你能解釋這是爲什麼嗎?
我強烈建議改變你的文章的標題,聽起來更像是一個誇誇其談比回答的問題。此外,請在此處**發佈相關代碼**。 –
此代碼正常工作。我可以按原樣運行它。 –
「看起來好像它沒有註冊createGUI()方法。」什麼讓你有那個想法?你是否收到編譯錯誤?運行時錯誤?發生了一些事情,但這不符合你的期望?如果是這樣,發生了什麼,你認爲應該發生什麼? –