我定义了一个接口叫ImobilStorage。
然后,在computer类中如
public class Computer{
private ImobilStorage usbDrive;
}
想问下为什么接口名可以定义一个变量?
我定义了一个接口叫ImobilStorage。
然后,在computer类中如
public class Computer{
private ImobilStorage usbDrive;
}
想问下为什么接口名可以定义一个变量?
这只是一个接口的引用,接口不能实例化对象,而接口的引用指向的是实现了接口方法的类的实例化对象。定义的接口的引用可以调用实现接口的方法,实现类对象指向接口引用被称为接口的多态。因为接口被类实现就必须重写接口的方法,而声明接口作为变量,实例化对象是该接口的实现类 ,这样我们就能调用实现类重写的方法。根据接口变量的实例化对象是不同的实现该接口的类,调用被实例化对象的方法。