JPanel panel = new JPanel() {
public void setBackground(Color c) {
Logger.global.info("setBackground: c=" + c);
super.setBackground(c);
}
};我只知道我能做JPanel panel = new JPanel();
为什么有人可以做上面的事情?它的名字叫什么?
发布于 2011-10-27 22:10:05
它被称为匿名类。
该代码基本上是“动态”地创建JPanel的一个子类,而不给它一个名称(因此称为“匿名类”),并实例化它。
与相关的问题和链接:
发布于 2011-10-27 22:38:20
它是一个匿名类,您可以扩展和定义其他方法或覆盖现有方法。
请注意,与扩展接口或抽象类的方式相同。
https://stackoverflow.com/questions/7917122
复制相似问题