简述JAVA的多态性

1.java多态性:
  1>java实现多态的前提:继承、覆写;
  2>覆写调用的前提:看new是哪个类的对象,而后看方法是否被子类覆写,若覆写则调用覆写的方法,若没覆写则调用父类的方法;
2.java多态性组成:
  1>方法的多态性:
    方法重载:方法调用时根据不同的参数个数和类型可以实现不同的功能
    方法覆写:不同的子类对于相同的方法可以有不同的实现;
  2>对象的多态性:父类与子类之间的转换操作
    对象向上转型:父类 父类对象 = 子类实例,自动完成;
    对象向下转型:子类 子类对象 = (子类)父类实例,强制转换;
3.注意:
  1>向上转型后父类对象不能调用子类中新建的方法,只能够调用子类中覆写的方法,向上转型之后牺牲了子类的个性化特征,若要调用新方法则要向下转型;
  2>要向下转型之前一定要先进行向上转型,这样才可以建立父子关系;
4.总结:
  1>向上转型(90%):为了实现参数类型的统一,但向上转型一定要和覆写配合使用;
  2>向下转型(1%):为了调用子类的特使支持,可以用instanceof进行判断,但是有风险,不推荐使用;
  3>不转型(9%):方便操作使用系统类或者一些功能类,如String或简单JAVA类;

你可能感兴趣的:(JAVA)