当前位置:网站首页>父类对子类的引用(父类引用指向子类对象)
父类对子类的引用(父类引用指向子类对象)
2022-07-26 10:31:00 【一尾流鸢cd】
(有什么错误希望大家可以指出来,谢谢。)
使用前提:在父类与子类之间的关系中,调用的方法要在父类中定义。
例如:Animal a=new Dog();
Animal类是Dog类的父类,声明的是一个Animal类,实际上它指向的是子类的一个对象 也就是new 关键字后的。
关键字: 多态,动态链接,向上转型
1、多态
方法的重写与重载和动态链接构成多态性,在父类对子类的引用中主要体现在子类对父类方法的重写
2、动态链接
当父类中定义的某个方法在子类中没有被重写时,调用的是父类的方法,如果子类对父类的方法进行了重新,那么调用的是子类的方法。
3、向上转型
在例子中,实际上是实例化了一个子类Dog类型的对象,Animal类型的父类a只是对他的引用
所以Animal类型的引用是可以指向Dog类型的对象的。这就是“向上转型”
public class Animal {
public void animal1(){
}
public void animal2(){
}
}
public class Dog extends Animal {
public void animal1(){
System.out.println("继承父类 并对他的方法进行重写");
}
public void animal1(String dog){
System.out.println("此处是对animal1()方法的重载。");
}
public static void main(String[] args) {
Animal a=new Dog();
a.animal2();//此处的animal3()方法调用的是父类的方法
a.animal1();//此处是因为在父类中定义了animal1()方法,所以父类类型的引用可以调用这个方法
a.animal1("sss");//此处出现错误是因为父类中没有定义animal1(String dog)该方法,
// 该方法只是对animal1()方法的一个重写,所以父类类型的引用不能调用这个方法
}
}
边栏推荐
- MD5加密
- [Halcon vision] image filtering
- .NET操作Redis List列表
- Application of crosstab in SQL Server
- Redis realizes the correct posture of token bucket
- 卸载魅族应用商店
- Li Kou daily question 917
- 分布式锁解决方案之Redis实现
- 结构体操作报错:Segmentation fault (core dumped)
- What will the new Fuzhou Xiamen railway bring to Fujian coastal areas?
猜你喜欢

数据分析入门 | kaggle泰坦尼克任务(一)—>数据加载和初步观察

Introduction to data analysis | kaggle Titanic mission (I) - > data loading and preliminary observation

hx711 数据波动大的问题

2022/07/25 ------ arrangement of strings
![[Halcon vision] programming logic](/img/1a/b6daac946fbefd8337355dc8b7873e.png)
[Halcon vision] programming logic

Review of database -- 1. Overview

【Halcon视觉】图像滤波

【Halcon视觉】图像滤波

数据库的复习--3.SQL语言

链式方法调用的事务问题剖析
随机推荐
微信公众号发布提醒(微信公众号模板消息接口)
Cause: couldn‘t make a guess for 解决方法
PTA class a 1001
Kaptcha image verification code integration
PLC概述
[Halcon vision] image filtering
Interview questions and answers for the second company (2)
Draco developed by Google and Pixar supports USD format to accelerate 3D object transmission & lt; Forward & gt;
Redis Docker实例与数据结构
[Halcon vision] software programming ideas
数据分析入门 | kaggle泰坦尼克任务(一)—>数据加载和初步观察
【Halcon视觉】编程逻辑
PTA class a 1002
C语言计算日期间隔天数
MLX90640 红外热成像仪测温传感器模块开发笔记(六)
[Halcon vision] Fourier transform of image
Inheritance method of simplified constructor (II) - class inheritance in ES6
Comparison of packet capturing tools fiddler and Wireshark
Li Kou daily question 917
Mlx90640 infrared thermal imager temperature sensor module development notes (6)