多态简介
多态性就是在运行期间决定调用哪个方法。
例如:下面这个例子就是
本来p是Person类型但是调用他的say方法是却输出的Student中的方法
这就是运行时决定调用哪个方法称为多态
public static void main(String[] args) {
// TODO Auto-generated method stub
Person p = new Student();
p.say();//输出I am student!
}
class Person {
String name;
int age;
public void say() {
System.out.println("I am person!");
}
}
class Student extends Person {
int weight;
public void say() {
System.out.println("I am student!");
}
}
上面例子中的p是父类的引用,指向的是子类的对象
多态实现的必要条件
- 有继承
- 有方法重写
- 有父类引用指向子类对象
注意:
一个引用类型变量如果声明为父类的类型,但实际引用的是子类对象,那么该变量就不能再访问子类中添加的属性和方法
时间: 2024-11-06 11:30:08