21xrx.com
2024-11-22 12:09:08 Friday
登录
文章检索 我的文章 写文章
Java多态性的三个方面:代码演示
2023-06-12 01:00:14 深夜i     --     --
Java 多态性 继承

Java作为一门面向对象的编程语言,多态性是其一个非常重要的特性。而这种特性主要表现在哪些方面呢?下面通过代码演示来详细阐述。

1.方法的重载

方法的重载指的是在同一个类中,有多个方法的方法名相同但是参数列表不同的情况。Java在编译时会通过方法的参数列表来区分不同的方法,这就是方法的重载。下面的代码演示了方法的重载:


public class OverloadDemo {

  public void display(int a) {

    System.out.println("a=" + a);

  }

  public void display(int a, int b) {

    System.out.println("a=" + a + ",b=" + b);

  }

  public static void main(String[] args) {

    OverloadDemo demo = new OverloadDemo();

    demo.display(1);

    demo.display(2, 3);

  }

}

2.方法的重写

方法的重写指的是在继承关系中,子类对父类的方法进行重写。Java在运行时会通过对象实际所属的类来决定调用的方法,这就是方法的重写。下面的代码演示了方法的重写:


public class OverrideDemo {

  public void display() {

    System.out.println("OverrideDemo");

  }

}

public class OverrideDemo2 extends OverrideDemo {

  public void display() {

    System.out.println("OverrideDemo2");

  }

  public static void main(String[] args) {

    OverrideDemo demo = new OverrideDemo2();

    demo.display();

  }

}

3.对象的多态

对象的多态指的是一个对象可以通过多种方式进行使用,而这种使用方式是在运行时动态确定的。Java中的多态是通过继承和方法的重写来实现的。下面的代码演示了对象的多态:


public class PolymorphismDemo {

  public static void test(Displayable d) {

    d.display();

  }

  public static void main(String[] args) {

    Displayable d1 = new Display1();

    Displayable d2 = new Display2();

    test(d1);

    test(d2);

  }

}

interface Displayable {

  void display();

}

class Display1 implements Displayable {

  public void display() {

    System.out.println("Display1");

  }

}

class Display2 implements Displayable {

  public void display() {

    System.out.println("Display2");

  }

}

三个

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复