2012-05-22 50 views
2

因爲我習慣了JavaScript中的代碼,我想創建具有屬性的對象。Java創建對象作爲函數的參數

這裏是我的代碼:

jPanel2.add(new JPanel(){ this.add(new JButton("Add")); }); 

你有什麼建議嗎?

+2

'jPanel2.add(新JPanel( 「文本」));' – Ved

+0

我想補充一個JPanel,裏面有一個按鈕,裏面jPanel2 –

回答

7

您可以隨時使用這個語法:

container.add(new JPanel() {{ this.add(new JButton("Add")); }}); 

完整的示例:

public static void main(String[] args) throws Exception { 

    JFrame frame = new JFrame("Test"); 

    frame.add(new JPanel() {{ this.add(new JButton("Add")); }}); 

    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 
    frame.pack(); 
    frame.setVisible(true); 
} 
+0

只是一個警告:http://stackoverflow.com/questions/924285/efficiency-of-java-double-brace-initialization –

+1

匿名類體中的字段初始值設定項?天才!! –

+1

我說我認爲這是不可讀的嗎? –

相關問題