匿名内部类
匿名内部类
-
没有类名的局部内部类(一切特征都与局部内部类相同)。
-
必须继承一个父类或者实现一个接口。
-
定义类、实现类、创建对象的语法合并,只能创建一个该类的对象。
-
优点:减少代码量。
-
缺点:可读性较差。
//接口
public interface USB {
//服务
void service();
}
//接口实现类
public class Mouse implements USB{
@Override
public void service() {
System.out.println("连接电脑成功,鼠标开始工作");
}
}
//测试接口
public class TestUSB {
public static void main(String[] args) {
//创建接口类型的变量
/*USB usb = new Mouse();
usb.service(); */
//局部内部类
/*class Fan implements USB {
@Override
public void service() {
System.out.println("连接电脑成功,风扇开始工作...");
}
}
//使用局部内部类创建对象
USB usb = new Fan();
usb.service();*/
//使用匿名内部类优化(相当于创建了一个局部内部类)
USB usb = new USB() {
@Override
public void service() {
System.out.println("连接电脑成功,风扇开始工作...");
}
};
usb.service();
}
}
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义