接口是完全抽象化的类,里面没与完整的方法。我们可以定义一个功能,其他类可以实现这个接口来拥有这个功能。
接口可以被实现,但是不可以被继承。
接口可以被抽象类实现、也可以被具体类实现。因为抽象类含有抽象方法,所以它只需要选择性的选择去实现接口的方法,而具体类必须实现抽象类的所有方法。
A2 b=new B();
//b是由A2声明出来的,A2只有eat和work方法。即使创建出来的B拥有method1等方法,但是无法得到实现。但是可以对B进行强制转换:((B)b).method1();
因为B是子类,我们可以说子类是父类(例如:人是父类,老师是子类,我们可以说老师是人,但是不可以说人就是老师)。所以,可以强制性转换。