Java 什么';这个语言特性叫什么?

Java 什么';这个语言特性叫什么?,java,Java,我只知道我能做JPanel panel=newjpanel() 为什么有人能做到以上几点?它叫什么名字?它被称为匿名类 该代码基本上创建了JPanel“动态”的子类,而不给它命名(因此称为匿名类)并实例化它 相关问题和链接: 它是一个匿名类,您可以扩展和定义其他方法或覆盖现有方法 请注意,扩展接口或抽象类的方法与扩展接口或抽象类的方法相同。更确切地说是匿名内部类。@AlexR,匿名类始终是内部类,因此“匿名内部类”有点多余。 JPanel panel = new JPanel() {

我只知道我能做
JPanel panel=newjpanel()

为什么有人能做到以上几点?它叫什么名字?

它被称为匿名类

该代码基本上创建了
JPanel
“动态”的子类,而不给它命名(因此称为匿名类)并实例化它

相关问题和链接:


它是一个匿名类,您可以扩展和定义其他方法或覆盖现有方法


请注意,扩展接口或抽象类的方法与扩展接口或抽象类的方法相同。

更确切地说是匿名内部类。@AlexR,匿名类始终是内部类,因此“匿名内部类”有点多余。
JPanel panel = new JPanel() {
        public void setBackground(Color c) {
           Logger.global.info("setBackground: c=" + c);
           super.setBackground(c);
        }
    };