这是由netbeans生成的一段代码,我对这些括号在调用AbstractListModel
之后的工作感到困惑。
li_reminderslist.setModel(new javax.swing.AbstractListModel() {
String[] strings = { };
public int getSize() { return strings.length; }
public Object getElementAt(int i) { return strings[i]; }
});
对不起初学者的问题。我尝试寻找有关它的教程,但找不到。
最佳答案
它创建一个Anonymous Inner Class。
基本上,您正在创建AbstractListModel
的新实例,但覆盖了一些内容。由于您只打算在一个地方使用它,因此没有必要使用其自己的名称创建一个完整的类声明,因此就没有了“匿名”部分。
附带说明一下,由于Java 8 Lambda Expressions与匿名内部类具有类似的功能,但是它们专门用于仅使用一种抽象/未实现的方法实例化类/接口。