Java教程

java的多态

本文主要是介绍java的多态,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

多态是同一个行为具有多个不同表现形式或形态的能力。

多态是方法的多态。和属性无关。

一个对象的实际类型是确定的,但是可以指向对象的引用的类型有很多(父类)。

多态存在的三个必要条件

  • 继承
  • 重写
  • 父类引用指向子类对象:Parent p = new Child();

多态的实现方式

方式一:重写

方式二:接口

  • 生活中的接口最具代表性的就是插座,例如一个三接头的插头都能接在三孔插座中,因为这个是每个国家都有各自规定的接口规则,有可能到国外就不行,那是因为国外自己定义的接口类型。
  • java中的接口类似于生活中的接口,就是一些方法特征的集合,但没有方法的实现。具体可以看 java接口 这一章节的内容。

方式三:抽象类和抽象方法

例子

父类:

package demo04;

public class Person {
    public void run(){
        System.out.println("super,你倒是说句话呀!");
    }
}

子类:

package demo04;
public class Student extends Person{
    @Override
    public void run() {
        System.out.println("son,你不也没话说吗!");
    }
    public void eat(){

    }
}

测试:

import demo04.Person;
import demo04.Student;
public class Application {
    public static void main(String[] args) {
        //一个对象的实际类型是确定的,但是指向的引用类型就不确定了,如父类的引用指向子类
        Student s1=new Student();
        Person s2=new Student();
        Object s3=new Student();

        s2.run();
        s1.run();

    }
}
运行结果:
son,你不也没话说吗!
son,你不也没话说吗!
这篇关于java的多态的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!