匿名内部类是在创建实例时定义的内部类,无需显式名称。语法:new () { // 匿名内部类体}。优点:简洁、代码重用、局部作用域。缺点:可读性差、调试难度大。实战案例包括覆盖匿名类和实现匿名接口。
Java 匿名内部类创建指南
什么是匿名内部类?
匿名内部类是一种在创建实例的同时定义的内部类。它们没有显式名称,并且通常用于在短的时间内覆盖或实现类或接口。
创建匿名内部类
要在 Java 中创建匿名内部类,请使用以下语法:
new () { // 匿名内部类体 };
基类或接口名是匿名内部类将从中继承或实现的类或接口。类体包含匿名内部类的方法和字段的定义。
实战案例
1. 覆盖匿名类
使用匿名内部类覆盖 Runnable
类的 run()
方法:
Thread thread = new Thread(new Runnable() { @Override public void run() { System.out.println("匿名内部类线程运行"); } }); thread.start();
2. 实现匿名接口
使用匿名内部类实现 Comparator
接口:
List strings = new ArrayList(); Comparator comparator = new Comparator() { @Override public int compare(String s1, String s2) { return s1.length() - s2.length(); } }; strings.sort(comparator);
优点
- 简洁性:匿名内部类可以直接创建,无需定义单独的类文件。
- 代码重用:它们可用于创建仅使用一次的临时实现。
- 局部作用域:匿名内部类只能在创建它们的类或方法的作用域内访问。
缺点
- 可读性:匿名内部类可能会使代码难以阅读和理解。
- 调试难度:由于匿名内部类没有名称,因此在调试时可能更难跟踪。
以上就是Java 匿名内部类如何创建?的详细内容,更多请关注每日运维网(www.mryunwei.com)其它相关文章!