java多态的定义和应用,java多态的理解(运行时多态)

  java多态的定义和应用,java多态的理解(运行时多态)

  

  如何解决写爬虫IP受阻的问题?立即使用。

  多态概述

  1.多态性是继封装和继承之后面向对象的第三个特征。

  2.多态现实意义理解:

  现实中的事情往往表现为各种形态,比如学生,学生是一种人,那么某个特定的同学张三既是学生又是人,也就是有两种形态。

  作为一种面向对象的语言,Java也可以描述一个事物的各种形式。如果学生类继承了Person类,那么学生的对象既是学生也是人。

  3.多态性体现在父类引用变量可以指向子类对象。

  4.前提条件:必须有父子关系。

  注意:当使用多态父类引用变量调用方法时,将调用子类的被覆盖方法。

  5.多态的定义和格式

  定义:父类类型变量名=新子类类型();

  多态中成员的特点

  1.多态成员变量:编译运行时向左看。

  fu f=new Zi();

  system . out . println(f . num);//f是Fu中的值,只能得到父体中的值。

  2.多态成员方法:向左编译,向右运行。

  fu f1=new Zi();

  system . out . println(f1 . show());//f1的facade类型是Fu,但实际类型是Zi,所以调用重写的方法。

  instanceof关键字

  函数:用于判断一个对象是否属于某种数据类型。

  注意:返回类型是布尔值。

  使用案例:

  fu f1=new Zi();

  傅f2=新子();

  if(Zi的f1实例){

  System.out.println(f1是Zi的类型);

  }

  否则{

  System.out.println(f1是儿子的类型);

  }多态的转型

  多态转化可分为向上转化和向下转化。

  向上转化:多态性本身就是向上转化的过程。

  使用格式:父类类型变量名=新子类类型();

  适用场景:当不需要面对子类类型时,可以通过提高扩展性或者利用父类的功能来完成相应的操作。

  向下转换:已经向上转换的子类对象可以使用强制类型转换的格式,将父类引用类型转换为子类引用类型。

  使用格式:子类类型变量名=(子类类型)父类型变量;

  适用场景:当你想使用特定于子类的函数时。

  多态案例:

  示例1:

  包day0524

  公共类演示04 {

  公共静态void main(String[] args) {

  people p=new Stu();

  p . eat();

  //调用唯一的方法

  Stu s=(Stu)p;

  s.study()。

  //((Stu) p)。研究();

  }

  }

  阶级人民{

  public void eat(){

  system . out . println( eat );

  }

  }

  类Stu扩展人{

  @覆盖

  public void eat(){

  System.out.println(吃水煮肉片);

  }

  公共无效研究(){

  System.out.println(好好学习);

  }

  }

  班主任延伸人{

  @覆盖

  public void eat(){

  System.out.println(吃樱桃);

  }

  public void teach(){

  System.out.println(认真教);

  }

  }例2:

  题的运行结果是怎样的?

  包day0524

  公共类演示1 {

  公共静态void main(String[] args) {

  A A=new A();

  a . show();

  B B=new B();

  b . show();

  }

  }

  A级

  公共void show(){

  show 2();

  }

  public void show2(){

  system . out . println( A );

  }

  }

  B类扩展了A{

  public void show2(){

  system . out . println( B );

  }

  }

  C类扩展了B{

  公共void show(){

  super . show();

  }

  public void show2(){

  system . out . println( C );

  }

  }以上是《Java基础:多态的理解与应用》的详细内容。更多请关注我们的其他相关文章!

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: