关于Java的多态
概念
面向对象的三大特征为封装、继承、多态。其中多态指的是为不同数据类型的实体提供统一的接口,或使用一个单一的符号来表示多个不同的类型。一直都知道有这个概念,但是不清楚其背后的原理,明哥我当然要看看。
class Circle extends Graphics {}
class Rectangle extends Graphics{}
public static void main(String args*){
Graphics g1 = new Circle();
Graphics g2 = new Rectangle();
// ...
}
原理
- 创建父类的引用变量,并将指向子类对象。
- 在运行时,通过动态绑定确定引用变量所指向的实际对象的类型。
- 根据实际对象的类型,调用相应的方法版本。
(没怎么抄明白,以后慢慢补充
浙公网安备 33010602011771号