1、可以用子类的引用给父类的引用赋值,也就是说,父类的引用可以指向子类的对象。相当于父类的引用也指向子类的对象。
2、不能让子类的引用指向父类的对象。因为父类并没有子类的属性和方法。
3、因为子类继承了父类的方法和属性。所以父类的对象能做到的,子类对象肯定能做到。换句话说,可以在子类对象上,指向父类的方法,当父类的引用指向子类的实例,只能通过父类的引用,像父类一样操作子类对象。也就说名的类型,决定了执行哪些操作。
举例来讲。如果引用ph 和 m都指向一个对象,但是引用ph和m却不属于同一个类型。如果ph的类型中定义了getBrand方法,那么就可以调用ph.getBrand();但是m的类型中没有定义getBr and方法,那就不能调用m.getBrand()方法。
4、是否可以强制转换,取决于等号右边的引用指向的对象 是否是等号左边的类型或者其子类对象,如果是那么可以强制类型转化为该类型。否则就不可以。

虽然父类的引用可以指向不同类型的对象,调用方法时,实际执行的方法取决于对象的类型,而非引用的类型。也就是说,能调用那些方法,是引用决定的,具体执行哪个类的方法,是引用指向的对象决定的。这就是覆盖的精髓。覆盖是多态的一种,也是最重要的一种。

父类引用和子类引用之间 的关系相关推荐

  1. 父类指针指向子类对象的问题、父类对象和子类对象之间的问题

    一.父类指针指向子类对象 先上代码: class Base {public:void base_fun1() {}virtual void base_fun2() {cout << &qu ...

  2. 父类对象指向子类引用

    Java多态的三个必要条件: 1. 继承 2. 子类重写父类方法 3. 父类引用指向子类对象 然后看一个例子 输出结果为: 给出结论:Father  c  =  new  Child()    在c的 ...

  3. 多态之父类引用指向子类对象

    首先,这是多态的知识,多态有三要素: 继承 , 重写父类的方法 , 父类引用指向子类对象 以下是我对于多态的一些理解,如有不当,还请指正! 一,多态的概念与特征: 1.什么多态 多态是同一个行为具有多 ...

  4. 为什么父类引用可以指向子类对象 子类引用不能指向父类对象 泛型

    假设有父类Fu ,其子类为Zi ,从对象的内存角度,假设Fu类里面的变量占内存2M, Zi 类里的变量占内存1M: Fu f = new Fu ();//系统将分配2M内存 Zi z = new Zi ...

  5. Java基础之父类引用指向子类对象

    多态(Polymorphism) 多态是同一个行为具有多个不同表现形式或形态的能力. 多态就是同一个接口,使用不同的实例而执行不同操作,如图所示, 多态的有点 消除类型之间的耦合关系 可替换性 可扩充 ...

  6. 关于java多态性之父类引用指向子类对象

    在使用多态前,要确保两个类之间是继承关系 public class Animal{}public class Dog extends Animal{} 之后创建对象: Animal animal1 = ...

  7. 父类对子类的引用(父类引用指向子类对象)

    (有什么错误希望大家可以指出来,谢谢.) 使用前提:在父类与子类之间的关系中,调用的方法要在父类中定义. 例如:Animal a=new Dog(); Animal类是Dog类的父类,声明的是一个An ...

  8. java多态 成员访问特点(父类引用指向子类对象)

    >父类 子类  package com.dareway.demo;public class Father {public String index="fatherLogo"; ...

  9. 父类引用指向子类对象详解

    父类引用指向子类对象 父类引用指向子类对象指的是: 例如父类Animal,子类Cat,Dog.其中Animal可以是类也可以是接口,Cat和Dog是继承或实现Animal的子类. Animal ani ...

最新文章

  1. 文件上传利器SWFUpload使用指南
  2. “_snprintf”: 不是“std”的成员
  3. 成功解决ValueError: `bins` must be positive, when an integer
  4. 栈的动态顺序存储和实现(C语言)【栈】(7)
  5. [NOI2011]兔兔与蛋蛋游戏 二分图博弈
  6. 2019优质公众号大盘点,果断收藏了慢慢看吧 ~
  7. python TypeError can only concatenate tuple not str to tuple
  8. 不在 sudoers 文件中。此事将被报告_快餐包装中检出致癌物质?麦当劳、汉堡王回应!...
  9. 科学家用计算机模拟后确认 60个n原子,科学家用计算机模拟后确认,60个N原子可结合成N60分子。下列关于N60的叙述中正确的是A.N60是一种新型的化合物...
  10. java 课后习题 温度转换
  11. 深度学习(1)---2017年深度学习NLP重大进展与趋势
  12. parquet : java.lang.NoSuchFieldError: BROTLI
  13. 三届格莱美奖得主Ryan Tedder将在Origin上发行NFT
  14. Python web —— webbrowser + feedparser 网络爬虫刷博器
  15. 麒麟操作系统激活相关问题
  16. 下载百度文库的受限文件-冰点下载器
  17. Centos 命令行添加VLAN TAG
  18. java开发五子棋程序
  19. android平板 视频输入,安卓平板电脑的新突破口:HDMI in 视频输入,取代便携显示器...
  20. 联盟:微信封号最新规则以及解决方法

热门文章

  1. 使用JavaScript制作轮播
  2. 数据库设计学习②:数据库设计的步骤
  3. python爬虫 构建自己的代理IP池
  4. 技术贴 | 视频清晰度由什么决定
  5. F1-F12键的作用
  6. Span-Level Model for Relation Extraction论文学习
  7. 修改flinksql已经定义表的表结构
  8. stm32笔记05——stm32引脚功能分布
  9. lnmp一键部署脚本
  10. 10个建模师,9个吃不饱,游戏建模师职业现状