Java基础:第三十六讲 成员变量的继承与覆盖

Java第三十五——三十六讲总结-输入输出流.doc 小贝程序员生活\课件\java\java人家\Java第三十五——三十六讲总结-输入输出流.doc 小贝程序员生活\课件\java\java人家\Java第三十五——三十六讲总结-输入输出流.doc 小贝程序员生活\课件\java\java人家\Java第三十五——三十六讲总结-输入输出流.doc 立即下载

通过继承可以得到父类的成员变量,子类的成员变量包括从父类继承的成员变量(包括从祖先类中继承的成员变量)以及子类中重新定义的成员变量。本次介绍内容包括:可以继承哪些成员?如果子类和父类出现了相同的成员变量如何处理?

1、可以继承的成员变量

可以继承的成员变量与成员变量的访问控制类型有关,成员变量的访问控制类型包括public、protected、缺省的和private。

子类继承父类之后,可以继承父类的public和protected类型的成员变量。例如:

public class Parent{

      public int i_public;

      int i_default;

      protected int i_protected;

      private int i_private;

}

public class Child extends Parent{

      private int i_child;

}

父类的成员变量包括:

      public int i_public;

      int i_default;

      protected int i_protected;

      private int i_private;

子类的成员变量包括:

      public int i_public;             // 继承自父类

      protected int i_protected;// 继承自父类

      private int i_child;             //在子类中声明的

2、覆盖父类的成员变量

假设父类中定义了成员变量a并且能够被子类继承,子类中又定义了成员变量a,这样子类中会有两个名字为a的成员变量,如何访问呢?

先看下面的例子:

public class Parent{

      public int a=10;

}

public class Child extends Parent{

      public int a=20;

}

pubilc class Test{

      public static void main(String args[]){

             Child child = new Child();

             System.out.println(child.a);

      }

}

运行结果应该是什么呢?

结果应该为20,也就是子类中定义的变量的值。

如果想访问父类中定义的成员变量,如何访问呢?首先把child转换成Parent类型,然后再访问。

System.out.println(((Parent)child).a);

如果在child类中如何访问自己的成员和父类的成员内,通过super来访问,例如下面的代码:

    public int getParentA(){
     return super.a;
    }
    public int getChildA(){
     return a;
    }

访问子类的成员变量可以使用this,例如下面的代码:

    public int getChildA(){
     return this.a;
    }

注意:

1)从父类继承的成员变量,其访问控制符仍然相同。

2)子类定义与父类同名的成员变量,并没有覆盖父类的成员变量,而是两个成员变量共存。

李绪成 优快云 Blog: http://blog.youkuaiyun.com/javaeeteacher

 

DDR4内存PCB设计实战:8层板Fly-by拓扑信号完整性优化 本文深入探讨了DDR4内存条在8层PCB板上采用Fly-by拓扑时的信号完整性优化实战。文章详细解析了层叠规划、阻抗控制、电源分割、等长布线及串扰抑制等关键设计要点,并强调了仿真验证的重要性,为硬件工程师提供了从理论到实践的完整设计指南与自查清单。 阅读详情

相关推荐

Ubuntu22.04下,用Fast-LIVO2+3DGS重建桌面小物件:从点云到高清模型的保姆级避坑实录

本文详细介绍了在Ubuntu22.04环境下,使用Fast-LIVO2与3DGS技术进行桌面小物件三维重建的完整流程。从环境配置、数据采集到点云-图像对齐和3DGS训练,提供了针对小物件优化的参数设置和避坑指南,帮助用户实现媲美商业扫描仪的高清模型重建效果。

weixin_30897233的博客 400

0.1.14 java基础-继承、成员变量区别、方法覆盖重写

继承 1 概述 多个类中存在相同属性和行为时,将这些内容抽取到单独一个类中,那么多个类无需再定义这些属性和行为,只要 继承那一个类即可。如图所示: 其中,多个类可以称为子类,单独那一个类称为父类、超类(superclass)或者基类。 继承描述的是事物之间的所属关系,这种关系是: is-a 的关系。例如,图中兔子属于食草动物,食草动物属于动 物。可见,父类更通用,子类更具体。我们通过继承,可...

weixin_43209097的博客 233

stm32H743IIT6 cubemx HAL USB UVC摄像头基础

stm32性能已经很强了, 可以驱动ov5640摄像头, 所以可以把摄像头接在stm32上, 当作一个摄像头驱动器, 连接到电脑上 开发环境: stm32cubemx 6.0.1 单片机: 自己做的stm32h743iit6核心板,兼容正点原子 学习资料: 圈圈学USB 鱼鹰谈单片机 从零开始学习USBhttps://to-run-away.blog.youkuaiyun.com/article/details/85038393 整个项目是基于CDC串口上修改 1 stm32 USB 代码概览 ..

紫枫洛天的博客 7754

关于JAVA中成员变量覆盖认识和总结

在Java的多态特点中,子类继承父类的成员变量(member variable)时,如果字面值(variable literal)不一致时。不是说子类没有继承父类的特性,而是子类将父类的特性覆盖(override)了。这时将会使用子类的成员变量,而父类的成员变量将被保护起来。如果想要使用父类的成员变量,则可以改变其布雷变量的修饰符。 下面将举一个小例子: //定义一个父类Fruit public ...

wwsznb的博客 758

LoRa模块选型指南:正点原子ATK-LORA-01与SX1278芯片深度评测(含实测距离/功耗数据)

本文深度评测了正点原子ATK-LORA-01与SX1278芯片的性能表现,通过实测数据展示其在复杂环境中的通信距离与功耗表现。特别适合智慧农业、工业监测等物联网应用场景,提供详细的配置指南和优化技巧,帮助开发者实现高效、低功耗的LoRa通信解决方案。

weixin_29191081的博客 291

两相变频交错PFC实战:从论文理论到PSIM仿真的完整避坑指南

本文详细解析了两相变频交错PFC技术从理论到PSIM仿真的完整实现过程,特别针对CRM模式下的BOOST PFC设计挑战提供实用解决方案。涵盖周期值比较法与RS触发器法的对比实施、PSIM仿真中的过零处理与收敛性优化等核心问题,并给出硬件实现的进阶建议,助力工程师高效完成高功率密度PFC设计。

weixin_30632089的博客 423

Java基础:成员变量的继承与覆盖

1.前言 最近在研究Java多态时,发现子类通过继承父类来实现Java中的多态。子类可以继承父类的成员方法和成员变量。子类中如果有同名的成员方法,并且方法的参数和返回值一样,那么这个子类定义的这个方法将覆盖父类的方法。那么如果子类有同名的成员变量呢,情况又会怎么样呢?通过继承可以得到父类的成员变量,子类的成员变量包括从父类继承的成员变量(包括从祖先类中继承的成员变量)以及子类中重新定义的成员变量。...

Master-TJ的个人博客 3132

【MNE脑电信号处理学习笔记1】数据的读取、可视化、剪裁、滤波和保存

MNE之读取原始数据、可视化数据、剪裁数据、滤波和保存 Reading & visualizaing raw data, cropping, filtering, and saving 原视频教程:Pybrain: M/EEG analysis with MNE Python 原笔记和材料:pybrain_mne 本文根据视频和个人理解对原笔记进行细微修改。 Import the few packages we’ll need import matplotlib import pathlib i

小白家 4217

继承与覆盖

(1)成员变量的继承与隐藏 基于父类创建子类时,子类可以继承父类的成员变量和成员方法。但是,如果在父类和子类中同时声明了一个同名变量,则这两个变量在程序运行时同时存在。也就是说,子类在使用的同名变量只是被隐藏了。 能够继承父类的public和protected成员变量;不能够继承父类的private成员变量; 对于父类的包访问权限成员变量,如果子类和父类在同一个包下,则子类能够继承;否则,子类不能够继承; 对于子类可以继承的父类成员变量,如果在子类中出现了同名称的成员变量,则会发生隐藏现象,即子类的

R813913的博客 1397

量化交易如何利用涨停板策略收割散户

量化交易通过算法筛选特定特征的股票,在早盘建立底仓后,利用大单拉升制造抢筹假象,吸引散户跟风买入。这种策略利用了散户的认知偏差,如锚定效应和从众心理,导致次日低开闷杀。从技术实现来看,量化策略通过控制买入量、隐藏真实意图等手段,精准执行隔日砸策略。对于短线交易者而言,理解量化资金的运作逻辑和识别危险涨停板的特征至关重要,这包括观察封板时间、盘口挂单、量价关系等多维度数据。在算法主导的市场中,散户需要升级交易工具和策略,从预测走势转向应对走势,才能避免成为量化策略的牺牲品。

weixin_33046983的博客 293

7、基于机器学习的生产效率估计方法解析

本文探讨了基于机器学习的生产效率估计方法,重点介绍了效率分析树(EAT)和凸效率分析树(CEAT)算法的原理及其与传统自由处置壳(FDH)和数据包络分析(DEA)方法的对比。通过剪枝优化、生产可能性集构建及方向距离函数(DDF)估计,EAT和CEAT在避免过拟合、提升估计稳定性与处理凸性假设方面展现出优势。结合PISA教育数据的实证研究,采用箱线图、核密度图和非参数检验方法验证了不同模型效率得分分布的显著差异。研究表明,EAT与CEAT为生产效率评估提供了更准确、灵活的工具,适用于教育、企业生产和医疗等多个

milk5的博客 94

Java的特性-继承 子类能否继承父类的私有变量及方法

2.子类无法直接访问父类的私有变量及方法,但可以通过getter、setter方法间接访问私有变量。1.子类可以继承父类的私有变量及方法。

Sayatnoon的博客 3335

k3s cpu load 和 cpu 使用率很高处理

在这期间还执行过缩减 sqlite3 数据库操作,不知道是哪个操作起了作用,亦或者两个操作有影响,删除 ns 促进了数据库缩减的执行(没删除之前数据库缩减不成功,db文件大小未减小,但不确定是不是执行完 VACUUM 之后需要时间 db 文件才会减小,或者是因为删除了 ns 才导致其减小),再或者是两个操作都起了作用。kubectl get ns 发现有很多卡在删除状态的 ns。k3s 官网关于这个问题的谈论。执行如下脚本删除掉这些 ns。有人详细说过这个问题。

weixin_40548182的博客 685

java继承中,成员变量的覆盖

<br />其实Java继承中,成员变量(包括静态变量,实例变量,常量)没有覆盖(override)一说,应该叫隐藏(hidden)。override只针对方法来说的。<br /> <br />当成员变量为private时,其他类不能直接访问到,只能通过非private方法 访问,因此直接按照分析方法的思路分析,如该方法是否有覆盖,该方法是否是静态方法。<br /> <br />当成员变量为static时,即静态变量,在类加载过程中就分配了内存,因此只与访问的变量类型有关。<br />class Supe

xiemk2005的专栏 7909

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

IDEA的使用指南

IDEA基于java的使用手册,可以最快速的上手,在使用中不断的丰富自己的使用技巧.

java 成员变量 继承吗_Java基础 成员变量的继承与覆盖

通过继承可以得到父类的成员变量,子类的成员变量包括从父类继承的成员变量(包括从祖先类中继承的成员变量)以及子类中重新定义的成员变量。本次介绍内容包括:可以继承哪些成员?如果子类和父类出现了相同的成员变量如何处理?1、可以继承的成员变量可以继承的成员变量与成员变量的访问控制类型有关,成员变量的访问控制类型包括public、protected、缺省的和private。子类继承父类之后,可以继承父类的p...

weixin_42169971的博客 913

Outlook Express 6 (OE6) for Win7/Win8/Win10

英文版 Outlook Express6.0, 兼容Win7/Win10/WinXP,解压就可用。

Java 父类和子类关系:成员变量(覆盖)、构造方法、成员方法(覆盖)、类型转换等

详细解释Java中父类和子类的关系1 定义类2 构造方法3 成员变量4 成员方法5 类型转换6 隔代继承 主要包括:成员变量(覆盖)、构造方法、成员方法(覆盖)、类型转换 1 定义类 定义A、B、C、D四个类,B、C继承A,D继承B class A{ public int a; private int b; protected int c; // 两个构造方法 public A() {...

qq_34826261的博客 6411

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

Java 类的继承,成员变量的继承与隐藏。

Java 学习进入到面向对象思想之后,自我感觉有些抽象的概念实在难以理解。重复看了几遍书本内容的描述才理解了"类的继承和成员变量的继承与隐藏"。 子类与父类的关系 1.共享性:子类可以共享父类中的公共属性和方法。 2.差异性: 即子类和父类一定存在某些差异,否则就是同一个类了。 3.层次性: 由于java只支持单继承,每个类都处于继承中的某一个层面。 子类中的成员变量与父类中成员变量关系 1.当子类中定义了与父类中相同的成员变量时,父类中的成员变量只是被**"隐藏"**了,并没有被覆盖。 2.通过创建子类

weixin_46351306的博客 1657

java 成员变量 继承_Java基础 成员变量的继承与覆盖

通过继承可以得到父类的成员变量,子类的成员变量包括从父类继承的成员变量(包括从祖先类中继承的成员变量)以及子类中重新定义的成员变量。本次介绍内容包括:可以继承哪些成员?如果子类和父类出现了相同的成员变量如何处理?1、可以继承的成员变量可以继承的成员变量与成员变量的访问控制类型有关,成员变量的访问控制类型包括public、protected、缺省的和private。子类继承父类之后,可以继承父类的p...

weixin_29149931的博客 506

java中的成员方法与成员变量的继承

一 变量   子类与父类出现同名时,则子类隐藏父类的同名成员变量(子类与父类变量的类型可以不一样,父类的final或static修饰的变量也可以被隐藏) 二 成员方法 1、方法继承:利用extends关键字一个方法继承另一个方法,而且只能直接继承一个类。 当Sub类和Base类在同一个包时Sub类继承Base类中的public/protected/默认级别的变量个方法 在不同包时继承p

水手的专栏 3306

Java继承关于父类成员方法的覆盖问题,成员变量?

对于继承中子类中的成员方法能够覆盖掉父类的成员方法 对于成员方法,是不能覆盖的,在一个新的类里面定义一个成员变量与父类中的成员变量相同名称的时候并不会将父类的成员变量覆盖,而是将这个成员变量看作是这个新的类定义的新的成员变量 package jiCheng_duoTai; public class FUGai { public static void main(String[] args) ...

hey,欢迎浏览我的博客,希望能给你提供帮助。 1000

继承、重载和覆盖的区别

主要介绍了继承、重载和覆盖的区别

Wpan的博客 7326

JAVA 继承

JAVA 类的封装

啊Q老师 4082

黑马程序员1——关于Java的继承过程中成员变量与方法的隐藏与覆盖

最近几天在狂补Java的基础,在看到多态状态下继承时,出现纠结,于是把相关的思绪全部整理了一下,并编译验证。 先简述思想: 1、在继承过程中,父类成员变量一律只能被子类重写隐藏而不能重写覆盖。 2、在继承过程中,父类的静态方法一律只能被子类重写隐藏,实例方法一律被重写覆盖。 3、覆盖的方法没有加载进内存区。(这个是猜测,有待牛人考证) 4、静态方法与非静态方法之间不能重写,子类对象调用时

Json 923

java 继承 覆盖_java继承覆盖

java的继承与覆盖基本是java笔试中常出的题,也比较绕,这里是对java的继承覆盖做一个总结1.构造函数:当子类继承一个父类时,构造子类时需要调用父类的构造函数,存在三种情况(1).父类无构造函数或者一个无参数构造函数,子类若无构造函数或者有无参数构造函数,子类构造函数中不需要显式调用父类的构造函数,系统会自动在调用子类构造函数前调用父类的构造函数(2).父类只有有参数构造函数,子类在构造方法...

weixin_31054839的博客 433

java 继承隐藏_Java:类与继承(隐藏和覆盖的问题)

Java:类与继承对于面向对象的程序设计语言来说,类毫无疑问是其最重要的基础。抽象、封装、继承、多态这四大特性都离不开类,只有存在类,才能体现面向对象编程的特点,今天我们就来了解一些类与继承的相关知识。首先,我们讲述一下与类的初始化相关的东西,然后再从几个方面阐述继承这一大特性。以下是本文的目录大纲:一.你了解类吗?二.你了解继承吗?三.常见的面试笔试题若有不正之处,请多多谅解并欢迎批评指正。请尊...

weixin_29133959的博客 543

java继承与覆盖

语句创建obj1时,系统会首先调用父类的无参构造方法,然后在调用子类的无参构造方法,所以父类中的name被赋值为person name,子类中的name被赋值为student name,公共成员age先被赋值为23,然后被赋值为20。基于父类创建子类时,子类可以继承父类的成员变量和成员方法。子类可以继承父类中所以可以被子类访问的成员方法,但是如果子类重新定义了从父类继承的方法,那么父类的这个方法在子类中将不复存在,此时称子类方法覆盖了父类的方法,简称方法覆盖。1.子类可以继承父类的成员变量,

qq_74722140的博客 581
上一篇: 小偷与大偷
下一篇: Java基础:第三十七讲 成员方法的继承与覆盖
老李-大连
博客等级 码龄20年 3206粉丝 308原创
评论 3
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值