Java中匿名类有什么用?我们可以说匿名类的使用是Java的优势之一吗?
通过“匿名类”,我认为您的意思是匿名内部类。
匿名内部类在创建具有某些“附加”(例如覆盖方法)的对象实例时很有用,而不必实际子类化一个类。
我倾向于将其用作附加事件侦听器的快捷方式:
button.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent e) { // do something } });
使用这种方法可以使编码更快一点,因为我不需要创建一个额外的实现类ActionListener——我可以只实例化一个匿名内部类,而无需实际创建一个单独的类。
ActionListener
我只将这种技术用于“快速而肮脏”的任务,让整个班级感觉没有必要。拥有多个做同样事情的匿名内部类应该重构为一个实际的类,无论是内部类还是单独的类。