Java的多态怎么定义和应用
发表于:2025-01-31 作者:千家信息网编辑
千家信息网最后更新 2025年01月31日,本篇内容介绍了"Java的多态怎么定义和应用"的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!1、什么是
千家信息网最后更新 2025年01月31日Java的多态怎么定义和应用
本篇内容介绍了"Java的多态怎么定义和应用"的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!
1、什么是多态
概念:是指同一个行为具有不同表现形式或形态的能力。
2、定义格式
父类名称 对象名 = new 子类名称();// 或者接口名称 对象名 = new 实现类名称();
访问方式:
(1)直接通过对象名称访问成员变量:等号左边是谁,优先用谁,没有向上找。
(2)间接通过成员方法访问成员变量:看方法属于谁,优先用谁,没有向上找。
3、多态的应用
package Demo05;public class Demo01Multi { public static void main(String[] args) { Father son = new Son(); System.out.println(son.num);//父类:10 System.out.println("=========="); son.showNum(); son.method(); System.out.println("=================="); son.methodFather(); // son.methodSon(); //错误写法 }}public class Father { int num = 10; public void showNum(){ System.out.println(num); } public void method(){ System.out.println("我是爸爸"); } public void methodFather(){ System.out.println("父类方法"); }}public class Son extends Father{ int num = 20; @Override public void showNum(){ System.out.println(num); } @Override public void method(){ System.out.println("我是爸爸的儿子"); } public void methodSon(){ System.out.println("子类方法"); }}
打印结果
10
=========
20
我是爸爸的儿子
=============
父类方法
在多态的代码中,成员方法的访问规则是:
看 new 的是谁,就优先用谁,没有则向上找。
口诀:编译看左,运行看右。
成员变量:编译看左,运行还看左。
成员方法:编译看左,运行看右。
4、类型转换
(1)向上转型
多态本身就是子类类型向父类类型向上转换的过程,这个过程是默认的。
当父类引用指向一个子类对象时候,就是向上转型。
格式:
父类类型 变量名 = new 子类类型();
向上转型一定是安全的,没有问题的,正确的。但也有一个弊端,一旦转型为父类,那么就不能调用子类的原本特定的内容。
(2)向下转型
父类类型向子类类型转换的过程,这个过程是强制的。
格式:
子类类型 变量名 = (子类类型) 父类变量名;
如果想知道父类引用的对象,本来是什么子类。可以使用 instanceof 关键字,给引用变量做类型的校验。
对象 instanceof 类名称;
"Java的多态怎么定义和应用"的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注网站,小编将为大家输出更多高质量的实用文章!
子类
类型
变量
方法
多态
对象
成员
过程
应用
内容
名称
格式
爸爸
类名
编译
运行
儿子
就是
更多
知识
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
网络安全L2题库
附加数据库602
数据库性能排行榜
刀片服务器如何连接网络交换器
了解网络安全现状
软件开发师和信息技术员的区别
广东系统软件开发平台
软件开发出来不和需求不一致
昆山数据网络技术服务电话
java软件开发招聘郑州
黄冈定制软件开发方案
护苗网络安全的句子
组装机软件开发环境
丹江口服务软件开发包括哪些
王牌战争混服区服务器刷新时间
数据库导航按钮是什么意思
通信网络安全服务评定证书
义乌租车软件开发
虚拟机怎么用ubuntu服务器
广州市品高软件开发有限公
青岛税务安全接入服务器地址
cf服务器名称大全
软件开发费用单价
主流数据库对比
国三网络技术学什么教材好
网络安全专业单招知识
奉贤区工商软件开发销售价格
数据库怎么进行null解锁
2008数据库处理失败
湖北web前端软件开发要多少钱