当前位置: 首页 > article >正文

Java:多态的调用

1.什么是多态

       允许不同类的对象对同一消息做不同的响应。即同一消息可以根据发送对象的不同而采用多种不同的行为方式。(发送消息就是函数调用)。多态使用了一种动态绑定(dynamic binding)技术,指在执行期间判断所引用对象的实际类型,根据其实际的类型调用其相应的方法。多态的使用消除了类型之间的耦合关系。

2.多态实现的方式

        接口实现,继承父类进行方法重写,同一个类中进行方法重载。前两种称为动态多态或运行时多态,最后一种称为静态多态或编译多态。

3.多态的用法(多态如何使用)

其实多态调用成员变量和成员方法是不同的。

变量调用:编译看左边,运行也看左边。

方法调用,编译看左边,运行看右边。

4.下面是内存空间分布:

Animal:类 

package 多态的调用10;

public class Animal {
    String name="动物";

    public void show()
    {
        System.out.println("Animal---show方法");
    }
}
class duck extends Animal{
    public String name="鸭子:杨学";

    @Override
    public void show()
    {
        System.out.println("duck:杨学--show方法");
    }
}

test类:

package 多态的调用10;

public class test {
        public static void main(String[] args) {
            Animal a=new duck();
            System.out.println(a.name);
            a.show();
        }
}

 

 


http://www.kler.cn/a/383689.html

相关文章:

  • 追风赶月莫停留,平芜尽处是春山—记一次备考经历(下)
  • 100V宽压输入反激隔离电源,适用于N道沟MOSFET或GaN或5V栅极驱动器,无需光耦合
  • 自动控制系统综合与LabVIEW实现
  • Flutter 异步编程简述
  • 一键打断线(根据相交点打断)——CAD c# 二次开发
  • ReentrantLock底层原理、源码解析
  • 使用 Spring Security 和 JWT 实现安全认证机制
  • MySQL记录锁、间隙锁、临键锁(Next-Key Locks)详解
  • PostgreSQL (八) 创建分区
  • 如何选择适合CMS运行的服务器?
  • MySQL 8.0在windows环境安装及配置
  • STM32项目---水质水位检测
  • nuPlan最新SOTA,香港科技大学发布基于学习决策范围内的规划PlanScope
  • Java 网络编程(一)—— UDP数据报套接字编程
  • mysql数据同步到sql server
  • SpringBoot在线教育系统:云部署策略
  • 4.3 Linux的中断处理流程
  • 网络安全:数字时代的防护盾
  • Linux系统编程学习 NO.10——进程的概念(1)
  • Linux,shell基础,变量,数值运算
  • 矩阵论 •「线性变换」
  • Linux系列-进程的状态
  • 动态规划理论基础和习题【力扣】【算法学习day.25】
  • apache poi 实现下拉框联动校验
  • MySQL表转移数据的三种方式
  • 【Python进阶】Python中的网络爬虫策略:高效数据抓取与解析