匿名内部类:

1.没有类名的局部内部类(一切特征都与局部内部类相同)

2.必须继承一个父类或者实现一个接口

3.定义类、实现类、创建对象的语法合并,只能创建一个该类的对象。

优点:减少代码量

缺点:可读性较差

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 usb1=new fan();
    //usb1.service();

    //使用匿名内部类优化(相当于创建了一个局部内部类)
     Usb usb1=new Usb() {
        @Override
        public void service() {
            System.out.println("连接电脑成功,风扇开始工作了");
        }


    };
    usb1.service();


}

}

public class Mouse implements Usb {
@Override
public void service() {
System.out.println("连接电脑成功,鼠标开始工作了");
}
}

public interface Usb {
//服务
void service();
}