java interface 强制类型转换小记

1. Interface 可以用来持有任何implementation该Interface的对象,这和父类可以持有子类是一样的。

2. 任何需要一个类A的方法,你都可以把A的子类作为A的替代品来使用,当然有关具体的方法覆盖引起的问题,你要自己care

3. 一旦强制转换成功了,你就可以使用任意的属于转换后对象的方法,举例来说:

     > A a = (A)b  //把b实例转换成A对象的实例

     > a.methodOfA() // 因为虽然是b,但是你告诉编译器我要把它当做a来用了,属于A的方法自然可以调用

     注意:  转换是否成功不属于编译器的管辖范围,不合适的类型会让你得到运行时异常

原文地址:https://www.cnblogs.com/flyme/p/2313094.html