java - Java 中如何使用匿名内部类?

Java 中匿名类有什么用?我们能说匿名类的使用是Java的优势之一吗?

最佳答案

我认为“匿名类”是指 anonymous inner class .

匿名内部类在创建具有某些“附加”(例如覆盖方法)的对象实例时会很有用,而不必实际子类化一个类。

我倾向于使用它作为附加事件监听器的快捷方式:

button.addActionListener(new ActionListener() {
    @Override
    public void actionPerformed(ActionEvent e) {
        // do something
    }
});

使用这种方法可以使编码更快一点,因为我不需要创建一个额外的实现 ActionListener 的类——我可以只实例化一个匿名内部类,而无需实际创建一个单独的类.

我只将这种技术用于“快速而肮脏”的任务,让整个类(class)感觉不必要。拥有多个做同样事情的匿名内部类应该重构为一个实际的类,无论是内部类还是单独的类。

https://stackoverflow.com/questions/355167/

相关文章:

java - 从字符串中删除所有出现的 char

java - 如果可以使用 synchronized(this),为什么还要使用 Reentrant

java - 是什么导致错误 "No enclosing instance of type Foo

java - Mockito:试图监视方法正在调用原始方法

java - 如何在 Java 项目中查找未使用/死代码

java - 如何在 Java 中进行 URL 解码?

java - 如何将输出流转换为输入流?

java - 在Android应用程序中存储用户设置的最合适方法是什么

java - Java的隐藏特性

java - 使用 Mockito 模拟静态方法