继承类之间的执行顺序

:父类:
package   test;
public   class     FatherClass
{
        public   FatherClass()
  {
    System.out.println( "FatherClass   Create ");
  }
}
子类:
package   test;
import   test.FatherClass;
public   class     ChildClass   extends   FatherClass
{
  public   ChildClass()
  {
    System.out.println( "ChildClass   Create ");
  }
  public   static   void   main(String[]   args)  
  {
    FatherClass   fc   =   new   FatherClass();
    ChildClass   cc   =   new   ChildClass();
  }
}
输出结果:
FatherClass   Create
FatherClass   Create
ChildClass   Create  

为什么出现两个FatherClass   Create结果呢,那是因为由于继承关系,先执行父类的构造函数,再执行自己的构造函数。

要知道子类的构造方法的第一条语句就是调用父类的没有参数的构造方法,如果你没有写出这条语句java虚拟机就会默认的调用,如果你显示的写了这条语句,就一定要写在构造方法中的第一条语句,不然会报错

原理简述:只有在构造方法中调用了父类的构造方法才能继承父类的相关属性和方法,要不然子类从哪里继承父类的属性和方法,在实例化子类的时候又没有和父类有任何关系。

【深度剖析】三一重工的数字化转型(中篇) 三一重工在数字化转型方面取得了提高效率、降低成本、加强研发创新和改善内控管理等多方面的成效。本研究旨在通过对三一重工数字化转型的深入分析,引导企业思考在第四次工业革命与第三次能源革命交汇的超级技术窗口期,如何进一步把握发展机遇,并为同行业其他企业提供探索性的建议。作为装备制造行业的佼佼者,三一重工的数字化转型受到了业界的广泛关注。作为行业内首批接触并实践数字化转型的企业之一,三一重工的转型经验不仅成功,而且积累了丰富的理论与实践,为其他制造业企业的数字化转型提供了可借鉴的范例。 阅读详情

相关推荐

记录一下本地部署Dify的坑

1. 截止2025-3-4为止,请注意,不要直接拉Dify的1.0.0版本。请先试用0.15.3版本。1.0.0有一个bug需要解决。3. 请使用docker-ce 新版本,docker-engine等老版本可能会有部分容器启动脚本执行莫名报错。2. 注意,请使用docker-compose V2版本,或者V1较高版本,否则会导致解析官方yml模板错误。

哈利路亚的收藏夹 5346

Java继承和多态(1)

继承,super,protected,final,继承关系下的执行顺序,构造方法,组合

m0_74270127的博客 523

OpenClaw 完整部署教程

版本:OpenClaw 2026.2.13更新日期:2026-02-26适用系统:Linux (Ubuntu/Debian/CentOS)

qq_39436086的博客 2318

继承时类的执行顺序

package father; public class Father { public Father(){ System.out.println("father"); } public void abc(){ System.out.println("father abc"); } }   package father; public class ...

geelong的博客 312

USB2.0信号完整性测试之眼图

名称线缆颜色引脚描述红色绿色白色GND黑色。

qq_53766840的博客 3287

华为海思IC设计岗位笔试全解析:物理、电路与工艺三大方向备考指南

本文全面解析华为海思IC设计岗位笔试的物理、电路与工艺三大方向备考要点。针对物理设计方向,重点讲解半导体能带理论、载流子输运机制等核心考点;电路设计方向涵盖Verilog语法、UVM验证等关键技术;工艺方向则深入探讨FinFET工艺、光刻技术等前沿知识。提供高效备考策略和应试技巧,助力考生提升通过率。

weixin_29196613的博客 1086

【总结篇】继承中的执行顺序

父类的实例化——》父类的构造函数——》子类的实例化——》子类的构造函数。(父类静态对象,父类静态代码块,子类静态对象,子类静态代码块)作者:✿✿ xxxflower. ✿✿。这个专题就记录一些自己在练习中所学习到的。包括一些不熟悉的芝士点和一些小的细节。今天我们来总结一下继承中的执行顺序。(父类构造函数,子类构造函数)

xxxflower的博客 637

Kubernetes+EdgeX:构建企业级AI边缘推理平台

设备:工业摄像头(RTSP协议,输出1920x1080视频流);AI模型:YOLOv8训练的轴承裂纹检测模型(识别“裂纹”“正常”两种类型);目标:摄像头采集图像→EdgeX传输数据→K8s推理服务检测→结果反馈到报警器(HTTP协议)。Kubernetes+EdgeX的组合,为企业构建AI边缘推理平台提供了标准化、可扩展标准化:K8s的容器编排和EdgeX的设备管理,都是行业标准,避免“重复造轮子”;可扩展:支持从单边缘节点到 thousands of nodes 的规模,满足企业的增长需求;

AI算力网络与通信的博客 1344

子类继承父类,子类执行的时候,父子类的执行顺序?

java执行顺序: 加载时:静态的代码块、属性、方法都会在类加载时加载,它们的加载顺序按程序先后;实例化一个类时,会先加载普通属性>普通代码块>构造方法>普通方法 所以子类继承父类,子类执行的时候,父子类的执行顺序: 父类的static修饰的属性,代码块和方法(按照出现顺序执行)=》子类的static修饰的属性,代码块和方法=》当前主程序=》父类的普通属性=》父类的普通代码块=》父类的构造方法=》子类的普通属性=》子类的普通代码块=》子类的构造方法=》子类的普通方法 注意:父类的普

Jiao的博客 3271

《最游记》游戏开发全栈指南:从源码解析到实战部署

本文提供了一份详尽的《最游记》游戏源码全栈开发指南。文章深入解析了这款3D玄幻网游的完整源码结构,涵盖客户端、服务端、引擎和工具链,并提供了从环境搭建、核心模块解析到实战修改与部署的完整流程。对于希望深入理解MMORPG架构的开发者而言,这份指南是宝贵的实战资源。

weixin_28363123的博客 73

从代码仓库到知识库:自动化构建与RAG技术实践

在软件工程领域,代码库的规模与复杂性日益增长,如何高效管理和利用其中的知识成为关键挑战。传统文档工具主要依赖注释提取API信息,而现代知识构建技术则通过抽象语法树(AST)解析、自然语言处理等手段,深入理解代码结构、调用关系和业务逻辑。其核心价值在于将非结构化代码转化为机器可理解、可检索的结构化知识,显著提升代码资产的可维护性和团队协作效率。这一过程通常涉及代码解析、信息提取、向量化表示和存储索引四个关键阶段,其中向量化技术将代码语义转化为高维向量,为语义搜索奠定基础。结合检索增强生成(RAG)架构,开发者

weixin_42545292的博客 416

继承中的各代码块执行顺序

在存在继承关系时,静态代码块、非静态代码块、构造函数、方法等的执行顺序总结

m0_53762604的博客 1092

手把手教你学Simulink--基于飞轮储能系统的场景实例:飞轮储能与锂电池混合储能系统的协同控制

本文详细介绍了基于Simulink的飞轮储能与锂电池混合储能系统协同控制建模方法。通过高通/低通滤波器实现功率分配,使飞轮处理高频波动(±100kW),锂电池承担削峰填谷(50kW)。仿真结果表明,该系统效率达88%,锂电池循环次数减少90%,投资成本比纯电池方案节省200万美元。文章包含完整的建模步骤、控制策略设计和多场景仿真分析,为构建高效、长寿、经济的智能储能系统提供了实用解决方案。

MHD0815的博客 342

继承类之间的静态方法和构造方法之间的执行顺序

先执行父类的静态方法,再执行子类的静态方法,然后再父类的构造方法,最后是子类的构造方法。 例: public class A { static{ System.out.print(1); } public A(){ System.out.print(2); } } public class B extends A{

612

迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)

迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

C#中两个类之间有继承关系时的执行顺序~

http://www.cnblogs.com/zyh-nhy/archive/2009/01/22/1380000.html 当两个类之间有继承关系时,第一次构造子类的实例时,是按照如下顺序进行的: 1. 子类的静态成员初始化语句 2. 子类的静态构造函数 3. 子类的非静态成员初始化语句 4. 父类的静态成员初始化语句 5. 父类的静态构造函数 6. 父类的非静态成员初始化语句 7. 父类的构造函数 8. 子类的构造函数 为

plean的专栏 1227

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

大乱斗之 —— 关于类之间继承关系,执行语句的先后顺序

package ccc; import java.util.*; public class Main { public static void main(String[] args) { Student p = new Student(); Student p1=new Student("zhangsan",40); } } pack...

dazhuantoude的博客 152

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

Java继承之间类的加载顺序, 以及代码块、构造块的执行顺序

今天时候不早了, 随后我将根据这道面试题, 对涉及到的知识点一一完善 public class Test {     Person person = new Person("Test");     static{         System.out.println("teststatic");     }          public Test(){         Sys

wewe125的博客 264

【java】构造函数的继承执行顺序

问题: 子类继承父类,构造函数及公共属性的执行顺序是怎样的? 示例代码   public class A extends C { B b = new B(); static H h = new H(); static { System.out.println("this is static tack"); } static void i...

雪 * 馨 276

Unity3D脚本各函数执行顺序A…

原文地址:Unity3D脚本各函数执行顺序And不同脚本的执行顺序作者:草莓小臭臭一、继承MonoBehaviour类里的常用函数调用顺序: (1)、Awake():当一个脚本实例被载入是被调用,是最先被调用的函数,在脚本实例的整个生命周期,Awake()只会执行一次。(当脚本所附于的游戏物体没有被激活,Awake()则不会被执行,否则即使Awake()所在的脚本被禁用,也会执行Awake()

u011976408的博客 808

【转载】类的执行顺序

大家在去参加面试的时候,经常会遇到这样的考题:给你两个类的代码,它们之间是继承的关系,每个类里只有构造器方法和一些变量,构造器里可能还有一段代码对变量值进行了某种运算,另外还有一些将变量值输出到控制台的代码,然后让我们判断输出的结果。这实际上是在考查我们对于继承情况下类的初始化顺序的了解。 我们大家都知道,对于静态变量、静态初始化块、变量、初始化块、构造器,它们的初始化顺序以此是静态变量>静

tony的专栏 582

实例化一个对象(类加载)的执行顺序详解

实例化一个对象(类加载)的执行顺序详解这篇博客将以类加载执行顺序为探索的起点,串讲涉及到的Java相关知识,主要是这个流程中JVN内部运行机制的解析。结论Created with Raphaël 2.1.0开始父类静态代码子类静态代码父类非静态代码父类构造函数子类非静态代码子类构造函数结束注解: 默认该类及其父类JVM未曾加载过 先父后子,先静后常再构造 同等级内代码逐条按顺序执行 * 当静

朝花它日拾 1万+

【C++ 程序设计】第 5 章:类的继承与派生

C++ 中的继承是指在一个类的基础上创建一个新的类,新类包含了原有类的所有成员和方法,并且在此基础上添加了新的成员和方法。这样的新类就称为原有类的派生类(Derived Class)。在 C++ 中,通过 class 关键字后跟父类名以及 public、protected、private 等关键字来实现继承语法。

顾三殇 —— 博客空间(软件测试) 2913

java中静态块与非静态块以及自由块与构造函数执行顺序分析

  首先,让我们用一个简单的程序来引入主题: ***********************程序********************* package cn.kml.forserver20130730; /** * 定义一个用于测试自由块以及构造器执行顺序的父类 * @author 柯美玲 QQ:794950040 */ public class Detail{ ...

陌陌天使 278

java多线程学习之启动顺序不等于执行顺序

package learn.thread;/* * 线程start()方法执行顺序不等于启动顺序 */ public class Demo2 extends Thread { public Demo2(int i) { super(); this.i = i; } private int i; @Override public

cjwdemo的博客 1263

java继承一个类需要导入吗_java 继承类加载顺序

加载顺序为父类静态定义初始化子类静态定义初始化父类定义初始化父类构造方法子类定义初始化子类构造方法packagexu.jin;classInsect{privateinti=print("helloi");Insect(){System.out.println("Insect"+i);}{System.out.println("1");System.out.println("2");}...

weixin_29227425的博客 252

类之间的关系

这就是我大概的理解,关于类之间的关系中横向关系跟23种设计模式有很大的联系,而纵向关系更是C++面向对象的三大特征之一。

qq_43264167的博客 1402
上一篇: 单例模式的实现
下一篇: eclipse插件GWT Designer的安装与注册
studyjavalm1017
博客等级 码龄19年 0粉丝 11原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值