使用匿名内部类实现下列问题
接口Usb,实现类usb电风扇UFan和u盘UDisk,接口中有service方法,实现类予以实现。
//Usb类
public class Usb implements UDisk,UsbFan{
private UDisk uDisk;
private UsbFan usbFan;
public void service(){
System.out.println("U盘的价格:"+uDisk.price()+",电风扇的频率为:"+usbFan.hz());
}
//重写
@Override
public double price() {
return 35.9;
}
@Override
public String hz() {
return "36HZ";
}
public Usb(UDisk uDisk, UsbFan usbFan) {
this.uDisk = uDisk;
this.usbFan = usbFan;
}
public Usb(){}
public UDisk getuDisk(UDisk uDisk) {
return this.uDisk;
}
public void setuDisk(UDisk uDisk) {
this.uDisk = uDisk;
}
public UsbFan getUsbFan(UsbFan usbFan) {
return this.usbFan;
}
public void setUsbFan(UsbFan usbFan) {
this.usbFan = usbFan;
}
}
//测试类
public class TestUsb {
public static void main(String[] args) {
Usb u = new Usb();
u.setuDisk(()->35.6);
u.setUsbFan(()->“36HZ”);
u.service();
}
}
//接口UDisk
@FunctionalInterface
public interface UDisk {
double price();
}
//接口UsbFan
public interface UsbFan {
String hz();
}