面向对象多态

简介: 面向对象多态

多态的概念

继承或者接口都是多态性的体现,举例:小明是个学生,它既有学生身份又有人类身份,这就是多太

多态的格式与使用

父类引用指向子类对象

格式:父类名称 对象名 = new 子类名称();

Shix shix = new Ces();
接口名称 对象名 = new 实现类名称();
Jiek jiek = new Shix();


在动态代码中,成员方法访问的规则

new的是谁就先用谁,没有就往上找

编译看左边,运行看右面

对象的向上转型

其实就是多态的写法

父类名称 对象名 = new 子类名称():含义:右侧创建一个子类对象,把他当父类看待

一旦转型就无法访问本类的内容,但是可以向下转型【还原】

向下转型

格式:子类名称 对象名 = (子类名称)父类对象; 含义:将父类对象还原成子类对象

Animal animal = new Cat();
animal.eat();
Cat cat = (Cat) animal;
cat.wgfy();


必须先向上转型了之后在转回去,不能直接转回去

instanceof关键字进行

格式:对象 instanceof 类名称

将会得到一个boolean结果,判断前面的对象能否向下转型

用if语句

相关文章
|
存储 Java 编译器
初识面向对象(类和对象)
初识面向对象(类和对象)
82 0
|
4月前
什么是多态?面向对象中对多态的理解
本文介绍了面向对象编程中的多态概念,包括其定义、优点以及编译时多态和运行时多态的具体实现方式。通过实例展示了函数重载、运算符重载、虚函数、接口和抽象类的应用,帮助读者深入理解多态的灵活性和可扩展性。
365 6
|
6月前
|
算法 Java 程序员
类和对象 | 面向过程与面向对象的初步认识
类和对象 | 面向过程与面向对象的初步认识
76 5
|
8月前
|
存储 C++ C语言
【C++语言】初步认识面向对象编程&&类和对象(上)
【C++语言】初步认识面向对象编程&&类和对象(上)
理解面向对象——多态
理解面向对象——多态
102 0
|
9月前
对面向对象编程的理解,面向过程和面向对象有什么区别
对面向对象编程的理解,面向过程和面向对象有什么区别
99 0
面向对象之多态2
面向对象之多态2
55 0
|
9月前
面向对象编程的理解,面向过程和面向对象有什么区别
面向对象编程的理解,面向过程和面向对象有什么区别
82 0
|
存储 编译器 C++
C++ 面向对象三大特性——多态
面向对象三大特性的,封装,继承,多态,今天我们研究研究C++的多态。