11.2Java-多态
2024-09-04 15:41:09
一、父类
public class Fu { public void show(){ System.out.println("父类"); } }
二、子类
public class Zi extends Fu{ public void show(){ System.out.println("子类"); } }
三、测试类
1.多态调用
多态的前提:是必须有子父类关系或者类实现接口关系,否则无法完成多态。
公式:父类类型或者是接口类型 变量 = new 子类类型();
多态的调用方法,方法必须运行子类的重写
2.多态,成员特点
成员变量:
编译的时候, 参考父类中有没有这个变量,如果有,编译成功,没有编译失败
运行的时候, 运行的是父类中的变量值
编译运行全看父类
成员方法:
编译的时候, 参考父类中有没有这个方法,如果有,编译成功,没有编译失败
运行的时候, 运行的是子类的重写方法
编译看父类,运行看子类
3.多态向上向下转型
向上转型:子类对象赋值给父类引用,多态本身就是向上转型的过程
父类类型 变量名 = new 子类类型();
person p = new student();
向下转型:已经向上转型的子类对象可以使用强制类型转换,将父类引用转换为子类引用,作用是为了可以使用子类的特有方法
子类类型 变量名 = (子类类型)父类类型变量;
student stu = (student) p;
public class Test { public static void main(String[] args) { Fu f = new Zi(); f.show(); } }
四、instacneof关键字
关键字,instanceof,比较引用数据类型
判断对象是否是某种数据类型,返回值,true,false
public class Instanceof { public static void main(String[] args) { //Fu f = new Zi(); Fu f = new Fu(); boolean b = f instanceof Zi; System.out.println(b); } }
最新文章
- MAC远程连接服务器,不需要输入密码的配置方式
- app字体被放大效果发虚
- 批量导入图片到word并添加文件名
- webpack 引用 jquery + bootstrap 报错解决
- 201521123065 《Java程序设计》第4周学习总结
- Java四种引用类型
- JS 输入框输入数字检查
- 用python做一个搜索引擎(Pylucene)
- C# 弹出确定、取消窗口
- MySQL绿色版安装整套流程
- MG90S 舵机 使用方法 树莓派
- GoldenGate 12.3 MA架构介绍系列(3) - 各功能模块介绍
- 【Go命令教程】4. go get
- SQL 3
- java日期格式转换工具类
- HDUOJ-----(1329)Calling Extraterrestrial Intelligence Again
- Reddit: 只有独生子女才明白的事
- BZOJ1030 [JSOI2007]文本生成器(AC自动机)
- [LeetCode 题解]: Container With Most Water
- 使用maven搭建ssm框架的javaweb项目
热门文章
- Python爬虫开发【第1篇】【多线程爬虫及案例】
- JavaScript的高大强
- C ++模板的声明和实现为何要放在头文件中?
- HDU1151 Air Raid —— 最小路径覆盖
- HDU1281 棋盘游戏 —— 二分图最大匹配 + 枚举
- POJ1984 Navigation Nightmare —— 种类并查集
- YTU 2800: 逗逗泡泡的保密电文
- sphinx是支持结果聚类的——WHERE、ORDER BY和GROUP BY
- Educational Codeforces Round 23 A-F 补题
- Robot Framework常用的操作库列表