package course.anonymousInternalClass; /** * @author WanJl * @version 1.0 * @title Demo01 * @description 匿名内部类 * @create 2026/7/27 */ public class Demo01 { /* Java中的内部类分为三大类: 成员内部类: |-普通成员内部类 |-静态成员内部类 局部内部类 匿名内部类 匿名内部类,顾名思义,就是这个类没有名字,是匿名,一般就是定义之后,直接使用。 匿名内部类的前提: 存在一个类或接口,这里的类可以是普通类也可以是抽象类 匿名内部类的格式: new 类名(){ // 类名可以是普通父类、抽象父类、或 接口 重写类的方法。 }; new 接口名(){ // 类名可以是普通父类、抽象父类、或 接口 重写接口的方法。 }; 匿名内部类的本质是一个继承了某个类或实现了某个接口的【子类的匿名对象】 匿名内部类可以使用多态的形式来接收 Compute compute = new Compute() { @Override public int add(int a, int b) { return a + b; } }; compute.add(15,3); 匿名内部类直接调用方法 new Compute() { @Override public int add(int a, int b) { return a + b; } public void method(){ System.out.println("匿名内部类特有的方法"); } }.mthod(); 匿名内部类在开发中的使用: 比如发现某个方法需接口或抽象类的子类对象,我们就可以传递一个匿名内部类过去,来简化传统的代码。 */ public static void main(String[] args) { //创建Usb接口的匿名内部类 Usb usb=new Usb(){ @Override public void startUsb() { System.out.println("启动鼠标"); } @Override public void closeUsb() { System.out.println("关闭鼠标"); } }; usb.startUsb(); usb.closeUsb(); } }