活动地址:CSDN21天学习挑战赛
今天我们讲多态。
多态的意思很简单,多种形态,比如说一个猫,我们可以把它归到动物类,也可以把她归到生命类
这是两个不同的类,但是在小猫身上都得以体现。这就是一个物质具有了多种形态的具体例子
多态的前提是继承,并且要有方法的重写。
Animal a = new Cat();
这个的话 我们如果编译了我们看左边,运行的话我们看右边
多态可以让我们不用关心某个对象到底具体是什么类型,就可以使用该对象的某些方法
并且提高了程序的可扩展性和可维护性,因为他的重写方法,我们也不需要。在多态中,我们所使用的对象都是父类的。总的来说,向上转型可以向下转型不行。
接下来就是接口了,接口是抽象性的,但是可以具体化
1)注意,接口是不能够创建对象,因为有抽象方法
抽象的类是abstract class
(2)子类假如只实现部分接口的抽象方法,那么,子类是抽象类,依旧是不能够创建对象
(3)子类只有在将接口当中的抽象方法全部都实现,那么才能够说创建对象
在这里需要注意:实现接口的方法,一定要是public修饰的,这样的主要原因就是因为,抽象类当中的成员(常量以及方法)都是public修饰的
注意:一个类只可以继承一个父类,能够实现多个接口。
接口的关键字是interface