java面向对象--继承(构造方法的访问特点)

news2024/11/15 7:41:55

一、引言 ( 简单介绍构造方法的特点)

        在 Java 中,面向对象编程中的继承机制允许子类继承父类的属性和方法。当涉及到构造方法时,有一些特定的规则需要遵循。以下是在继承中构造方法访问的一些关键特点:
构造方法的访问特点
1、构造方法的调用顺序:
        子类构造器会隐式或显式地调用其直接父类的构造器。
如果没有显式调用父类的构造器,那么编译器会默认添加一个对无参构造器的调用 super();。
调用父类构造器的语句必须是子类构造器的第一条语句。
2、显式调用父类构造器:
        可以使用 super() 显式调用父类的无参构造器。
使用 super(参数列表); 显式调用父类的某个带参数的构造器。
如果父类没有无参构造器,那么必须显式调用有参构造器。
3、构造器链:
        当父类构造器被调用时,它可能会继续调用更上层的父类构造器,形成一个构造器调用链。
这个链最终会到达继承层次结构的最顶层——Object 类,因为所有 Java 类都是直接或间接继承自

二、构造方法访问特点

1.父类中构造的方法不会被子类继承,因为这个会违反方法的定义规则,子类的方法名与类名不一致,会报错。

 2.子类中所有的构造方法都默认会先访问父类中的无参构造,再去执行自己。

3.那为什么会会有这一步?

  很简单,因为父类里面的变量都是可以被子类共有的,这一步就相当于给父类中的变量做了初始化,如果每一个这个默认,那子类调用时就会没有初始值了。子类在初始化的时候,可能会用到父类的数据,如果没有对父类进行初始化,那就子类无法使用父类的属性!

三、怎么调用父类构造方法 ?

子类方法的第一步都是:super(),这个是默认的,即使不写也是会存在的。且必须是在第一行。

package 继承练习2;

public class person {
    String name;
     int age;
    public person(){
        System.out.println("无参构造开始");
    }
    public person(String name, int age){
        this.name = name;
        this.age = age;
    }
    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public int getAge() {
        return age;
    }

    public void setAge(int age) {
        this.age = age;
    }
}

假设这个是定义的一个Person类,这里面的属性都可以被子类继承并使用,接着我们在定义一个student的子类来继承Person

package 继承练习2;

public class student extends person{
    public  student(){

        System.out.println("子类的空参构造");
    }
    public student( String name,int age){
        super(name, age);

    }
}

然后再定义一个Test测试类来运行程序

package 继承练习2;

public class Test {
    public static void main(String[] args) {
//        student s= new student("zhangsan",11);
        student s2 =new student();
//        System.out.println(s.name+"  "+s.age);

    }
}

当我们运行程序的时候,得到结果是这样的,很明显这符合,在空参的情况的,会先出初始化父类,然后再执行子类的方法。

至于,如何调用父类的构造方法,把上面的代码注释去调即可。值得注意的是,在子类中全参的构造方法中,因为已经在父类中存在,所以在用的时候是supr(name,age)。

 四、总结

 

 

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1995079.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Docker学习(6):Docker Compose部署案例

一、docker-compose部署mysql 1、准备镜像 2、编写my.cnf配置文件 # 服务端参数配置 [mysqld] usermysql # MySQL启动用户 default-storage-engineINNODB # 创建新表时将使用的默认存储引擎 character-set-serverutf8mb4 # 设置mysql服务端默认字符集…

【电控笔记z56】ADRC回路设计(与smo比较)

用在IPM ADRC 估测反电动势 参数变动 : 内部扰动 SMO : 有高频成分 需要低通滤波器滤去 - 需要补偿延迟 两轴同步旋转坐标下做adrc adrc适合去做变化速度比较低的扰动 ADRC : 估测高速变化的扰动 , 需要修改估测器 电机模型 Ld不等于Lq 式7如下蓝色框图 eso等效成一个纯积分…

基于zynq的图像视频数据采集处理项目一

基于zynq的图像视频数据采集处理项目一 文章目录 基于zynq的图像视频数据采集处理项目一1.整体的架构2.整体的时钟和复位设计3.详细方案设计3.1 ps端spi对摄像头的配置,数据的dvp口截断输入3.2 看手册对 IMX2221080P 模式图像解析3.3 拜耳图像格式转换为 RGB 图像3.…

两地三中心异地多活网络

基于阿里云洛神网络全球基础设施及云原生SDN技术,帮助企业客户在云上快速构建两地三中心跨域多活网络,保障企业核心业务在全球多地域的高品质互联。两地三中心多活网络解决方案提供了弹性、安全、高质量的网络能力,结合数据传输服务DTS轻松实…

下一个人工智能趋势令人恐惧

在技​​术进步的昏暗走廊中,我们站在悬崖边,凝视着广阔而难以预测的人工智能未来。 其进化过程中的每一次曲折都伴随着惊叹和恐惧的低语。当风吹过数字树木时,它讲述了各种可能性的故事,但在其歌声中交织着谨慎的音符。 下一个人…

C语言随机数小游戏

目录 前言 一、游戏要求: 二、游戏实现 1.游戏界面 2.游戏主体 3.主函数 4.运行结果: 总结 前言 前面我们学到了C语言随机数的相关知识,我们今天用这个知识做一个有趣的小游戏,会有一点函数的知识,不过后面会…

WPF中的图形对象

前言 在WPF中可以根据需要在前台绘制自己所需要的几何开状,可设置性很丰富,而且在xaml中很好的实时性,如果是设计时还可以考虑使用Blend for Visual Studio来添加元素,它的设计交互性更高。 1、形状基类Shape 为 Ellipse、Poly…

ATG(地空通信)

█ 到底什么是ATG? ATG,就是Air To Ground,空对地通信,也叫地空通信。 它是一种非常特殊的通信技术,专门为天上的飞机提供服务。 简单来说,就是沿着飞机的航线,设置大量的地面基站。基站天线…

Simulink函数如何绑定到状态

Simulink函数的绑定行为 当Simulink函数位于某个状态内时,该函数会绑定到该状态。绑定会导致以下行为: 函数调用只能在状态操作和状态及其子状态内的转换中发生。 当进入状态时,该功能启用。 当状态退出时,该功能被禁用。 例如&…

Mysql——一条SQL语句的执行流程

一、Mysql的体系结构 架构图: Mysql的体系结构主要分为以下几层: 1. Connectors 连接层:负责处理客户端的请求连接。 系统在访问Mysql的服务器之前会先与服务器建立TCP连接,连接成功后Mysql会对TCP传输过来的用户信息做权限验…

新型技术融合推动渲染技术的发展

随着计算机图形学的不断进步,渲染技术作为其核心组成部分,正经历着前所未有的变革与发展。在未来的几年中,AI、量子计算以及新型硬件技术的融合,将为渲染技术带来革命性的突破,进一步推动其在影视制作、游戏设计、建筑…

爬虫基础2

网页请求原理: 在浏览器上输入一个网址,计算机是不理解这个信息的,会向运营商服务器发送请求告知输入网址的IP地址,然后根据IP地址向对应的服务器发送请求,服务器就会返回一个HTML文件,浏览器会解析HTML文件,即我们看到的网页 根据层级关系来进行爬虫 在python里面相同的缩进表…

职场要懂“3不急”,否则走不远

在职场中,我们经常会遇到各种各样的人和事,有的同事能够得到领导的重视和喜爱,有的则始终处于“不温不火”的状态,这其中到底是什么原因导致的呢? 其实,很大一部分原因是因为在工作中犯了一些“急于表现”…

少儿编程 2024年6月scratch四级 电子学会图形化编程等级考试四级真题和答案解析(判断题)

2024年6月scratch编程等级考试四级真题 判断题(共10题,每题2分,共20分) 11、机器人程序如下图所示,当输入行动代码为”WWDDSSAA”时,机器人绘制的行动轨迹如下右图所示 答案:错 考点分析&…

【面试题】设计模式-责任链模式

设计模式-责任链模式 前言责任链简历案例代码小结 前言 我们知道,设计模式是面试时经常被问到的问题之一,这是因为设计模式能够体现出代码设计的美感,且在很多框架的底层也都会使用到各种设计模式,所以对设计模式的考察&#xff…

GNSS天线误差改正

根据原理解析了PPPH中关于天线误差改正部分的源代码,处理了卫星、接收机天线相位中心偏差、接收机天线高误差、天线相位缠绕误差,但是对于天线相位中心变化PCV误差并没有处理,该误差与卫星高度角方位角有关,在读取天线文件数据后需…

PDF转Markdown的利器(MinerU版)

嘿,技术爱好者们!今天,我要向你们介绍一个令人兴奋的开源项目——MinerU,这是一个一站式的高质量数据提取工具,它支持从PDF、网页和多格式电子书中提取数据。 MinerU:一站式开源数据提取工具 自制ModelSco…

09 DMA配合ADC多通道

[TOG] 前言 前面介绍了ADC数模转换,得到了内部的温度值和外部电压值,我感觉这样太消耗CPU的资源了,所以我准备用DMA来帮我从AD的数据寄存器中拿出数据出来,就不用再去读取AD的数据寄存器了。 一、什么是DMA DMA叫做直接存储器…

从分散到集中:TSINGSEE青犀EasyCVR视频汇聚网关在视频整体监控解决方案中的整合作用

边缘计算视频汇聚网关是基于开放式、大融合、全兼容、标准化的设计架构理念,依据《安全防范视频监控联网系统信息传输、交换、控制技术要求》(GB/T28181-2011)标准开发,集流媒体转发、视频编码、视频管理、标准通信协议、网络穿透…

【MAUI】系统主题方案

文章目录 概述具体AppThemeBindingResourceDictionaryApplication.Current.Resources.MergedDictionariesDynamicResource 来源 概述 主要有两种:AppThemeBinding 和ResourceDictionaryApplication.Current.Resources.MergedDictionariesDynamicResource 具体 Ap…