例子一
多态性的使用前提:1.类的继承关系,2.方法的重写
方法的重写的要求:
①子类重写的方法必须和父类被重写的方法具有相同的方法名称、参数列表
②子类重写的方法的返回值类型不能大于父类被重写的方法的返回值类型
③子类重写的方法使用的访问权限不能小于父类被重写的方法的访问权限(子类不能重写父类中声明为private权限的方法)
④子类方法抛出的异常不能大于父类被重写方法的异常
InterviewTest1.java
package com.klvchen.exer;
public class InterviewTest1 {
public static void main(String[] args) {
Base1 base = new Sub1();
base.add(1, 2, 3);
Sub1 s = (Sub1)base;
s.add(1, 2, 3);
}
}
class Base1{
public void add(int a, int... arr) {
System.out.println("base1");
}
}
class Sub1 extends Base1{
public void add(int a, int[] arr) {
System.out.println("sub_1");
}
public void add(int a, int b , int c) {
System.out.println("sub_2");
}
}