java 有继承关系的类的静态变量和非静态变量以及代码块的初始化顺序

news/2024/11/13 4:26:54/

类B继承A

在main函数中new一个B类对象

1.父类 静态变量初始化和静态代码先执行

2.再执行子类静态变量初始化和静态代码块

3.再进入B类构造器,以下图顺序进行执行

B中super进入A类构造器,同样是以这个顺序进行执行,A的父类是Object,没有执行语句,就进行A类的普通变量初始化和普通代码块的执行,再执行A类构造器里的其他语句

 

 A类构造器执行完毕,返回B类构造器,再进行B类普通变量初始化和普通代码块的执行,再执行B类构造器剩下的语句,此时main中 new B() 这个语句执行完毕,初始化完成;

如有多级继承关系,以此类推


http://www.ppmy.cn/news/40483.html

相关文章

本地安装WSL的发行版后,导出到另一台计算机安装的办法

一、步骤 1、首先你要在你的计算机上安装成功了WSL子系统,然后才能导出对应版本的tar文件,复制到另一台计算机中进行安装 2、例如我的电脑安装了Ubuntu 20.04.5这个版本,如图: 3、同时可以在命令提示符中只用命令wsl --list --ve…

脂肪肝 肾结石 怎么得来的

脂肪肝怎么得来的1.脂肪肝2.肾结石是如何产生的?1.脂肪肝 是由于肝细胞内脂肪堆积过多引起的慢性疾病,引起脂肪肝的因素有多种,由于常常没有自觉症状,往往不易引起人们的重视。常见原因有以下几种: 第一、过量饮酒&a…

人工智能在采购中的应用有哪些?

清楚地了解人工智能如何融入采购流程是非常有益的。这种专业知识至关重要,尤其是在技术不断进步的情况下。 尽管人工智能在采购中的应用仍处于起步阶段,但其在采购中的应用已有若干实例。你会遇到的一些最常见的用途包括: 加强电子战略采购…

BGP协议解析(白话版)

之前一直没搞明白BGP有啥用,加了跟没加没啥区别,专门查资料写了这篇《BGP协议解析》。 下面使用eNSP模拟器演示! IBGP与EBGP的区别 BGP分为两种:IBGP与EBGP。 两个路由器的BGP号相同,建立邻居关系叫IBGP&#xff0…

C#读写CSV文件帮助类

使用CsvHelper类库实现读取CSV文件到对象列表 using System; using System.Collections.Generic; using System.Globalization; using System.IO; using System.Linq; using System.Text; using System.Threading.Tasks; using CsvHelper; using CsvHelper.Configuration; na…

使用 ChatGPT 和 React 创建一个惊艳的3D卡片(一)

本系列文章将使用 ChatGPT、React 和 CodeSandbox 处理错误、图像占位符和协作,来探索如何创建一个惊艳的 3D 卡片,利用鼠标位置创建光照效果。这种设计在现代网站布局中非常常见。我们将深入了解如何使用网络技术创建这种动态效果,并利用 Ch…

Mybatis和hibernate的区别

相同点 Hibernate与MyBatis都是ORM(Object Relational Mapping)框架(对象关系映射框架),都是可以通过SessionFactoryBuilder由XML配置文件生成SessionFactory,然后由SessionFactory生成Session&#xff0c…

冒泡排序(Java)

文章汇总归纳整理于:算法竞赛学习之路[Java版] 冒泡排序是交换排序中的一种所谓交换,是指根据序列中两个元素关键字的比较结果来对换这两个记录在序列中的位置。 默认排序后的数据,从小到大进行排列 冒泡排序的基本思想 从后往前&#xff08…