2012-05-22 1 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

Инициализатор поля в анонимном классе тела? Genius !! –

+1

Неужели я ошибаюсь в том, что считаю, что это невозможно прочитать? –

Смежные вопросы