多态:
Java有三大特性:封装 继承 多态 多态: 多种形态。是面向对象的三大特性之一。多态是建立在封装和继承之上。
多态的注意事项:必须的有继承,必须得有重写。
一句话概括多态:父类的引用指向子类的对象。(重点)
对象的多态【重点】
1.一个对象 的编译类型和运行类型是不一样
2.编译类型是在定义对象的时候,就已经确定好的
3.运行类型是可以改变的
4.编译类型看=的左边 运行类型看 =的右边
Animal animal = new son(); 向上转型
父类的引用可以调用父类的所有成员方法,可以调用子类的重写父类的方法,但是不能调用子类独有的方法。
例子:
package com.qfedu.d_duotai;
class Person {
public void eat () {
}
}
class Student extends Person {
@Override
public void eat() {
System.out.println("学生吃饭,吃披萨");
}
public void sleep () { //自己独有的方法
System.out.println("中午不谁下午崩溃!!!");
}
}
public class Demo1 {
public static void main(String[] args) {
Person person = new Student();//向上转型
person.eat();
//person.sleep();
}
}
多态向下转型 语法格式: 父类类型 父类引用 &#