在Java中,匿名类(Anonymous Class)是一种没有名字的内部类,它可以用来创建一个类的实例,而不需要创建一个新的类文件。匿名类通常用于实现接口或继承一个类的子类,并且只需要使用一次的临时对象。
下面是如何在Java中使用匿名类的示例:
- 实现一个接口:
interface MyInterface { void doSomething(); } public class Main { public static void main(String[] args) { MyInterface myInterface = new MyInterface() { @Override public void doSomething() { System.out.println("Hello from anonymous class!"); } }; myInterface.doSomething(); // 输出 "Hello from anonymous class!" } }
- 继承一个类的子类:
class MyBaseClass { void display() { System.out.println("Display from base class"); } } public class Main { public static void main(String[] args) { MyBaseClass myBaseClass = new MyBaseClass() { @Override void display() { System.out.println("Display from anonymous class"); } }; myBaseClass.display(); // 输出 "Display from anonymous class" } }
在这两个示例中,我们使用了匿名类来实现MyInterface
接口和继承MyBaseClass
类。在匿名类中,我们使用@Override
注解来覆盖父类或接口中的方法。最后,我们创建了一个匿名类的实例,并将其赋值给相应的接口或基类类型的变量。