抽象与多态

Posted orezero

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了抽象与多态相关的知识,希望对你有一定的参考价值。

抽象

  如果一个类中,只有方法定义,没有方法的具体实现,那么该方法就称为抽象方法。而拥有抽象方法的类叫做抽象类,使用关键字static定义,抽象类并不能直接实例化,如果想要实例化抽象类,那么需要抽象类变量指向其子类对象。

  在抽象类中可以定义抽象方法,也可以定义具体方法,如果一个类继承抽象类,那么必须重写抽象类中定义的所有抽象方法。

  抽象方法定义的意义在于,使用父类变量指向子类对象时,可以对抽象方法进行调用。

1 publlic abstract class Student{
2   private String name;
3   private int score;
4   public abstract String rank(); 
5 
6 }

 

多态

①使用父类类型的引用指向子类的对象;

②该引用只能调用父类中定义的方法,不能调用子类中独有的方法;

③如果子类中重写了父类中的一个方法,那么在调用该方法的时候,将会调用子类中的这个方法;

④在多态中,子类可以调用父类中的所有方法;

⑤多态主要体现为方法重载和方法重写,相同的行为,不同的实现方式;

⑥多态的主要应用是多态参数和多态集合

⑦如果一个方法中有父类作为参数类型,就意味着可以给该方法传递任何一个子类对象。

以上是关于抽象与多态的主要内容,如果未能解决你的问题,请参考以下文章

多态抽象类与接口

继承,多态,接口与抽象类学习总结

接口与抽象类 多态

Java中抽象和多态的优势[重复]

Java语法包 继承 多态 抽象类 接口

多态与抽象类