首页 > 编程语言 >【教3妹学编程-java基础6】详解父子类变量、代码块、构造函数执行顺序

【教3妹学编程-java基础6】详解父子类变量、代码块、构造函数执行顺序

时间:2023-11-19 10:03:42浏览次数:37  
标签:初始化 java 静态 子类 代码 加载 妹学 父类 构造函数

【教3妹学编程-java基础6】详解父子类变量、代码块、构造函数执行顺序_父类

-----------------第二天------------------------


【教3妹学编程-java基础6】详解父子类变量、代码块、构造函数执行顺序_父类_02

本文先论述父子类变量、代码块、构造函数执行顺序的结论, 然后通过举例论证,接着再扩展,彻底搞懂静态代码块、动态代码块、构造函数、父子类、类加载机制等知识体系。温故而知新,建议点赞收藏~

 1先说结论
 

面试官:好的,你说一下java中父类子类的变量、代码块、构造函数执行顺序是怎样的?

3妹:好的,
Java程序中类中个元素的初始化顺序 初始化的原则是

  • 先初始化静态部分,再初始化动态部分,
  • 先初始化父类部分,后初始化子类部分,
  • 先初始化变量,再初始化代码块和构造器。

具体的,由于类中初始化的部分有静态成员变量、静态代码块、普通成员变量、动态代码块、构造函数。所以跟父类子类组合起来有10种情况,总体顺序是:

  • 1.父类的静态成员变量(如果是第一次加载类)
  • 2.父类的静态代码块(如果是第一次加载类)
  • 3.子类的静态成员变量(如果是第一次加载类)
  • 4.子类的静态代码块(如果是第一次加载类)
  • 5.父类的普通成员变量
  • 6.父类的动态代码块
  • 7.父类的构造器方法
  • 8.子类的普通成员变量
  • 9.子类的动态代码块
  • 10.子类的构造器方法

 2举例
 

面试官:能写个栗子

标签:初始化,java,静态,子类,代码,加载,妹学,父类,构造函数
From: https://blog.51cto.com/u_6813689/8469586

相关文章

  • 【教3妹学编程-算法题】三个无重叠子数组的最大和
    2哥 :3妹,咋啦?一副苦大仇深的样子?3妹:不开心呀不开心,羽生结弦宣布离婚。2哥 :羽生什么?3妹:羽生结弦!2哥 :什么结弦?3妹:羽生结弦!!!2哥:羽生结弦是谁?他离婚关你啥事啊?3妹:你不知道,他是日本著名花滑运动员,前几个月刚宣布结婚,没想到这么快就离了。真是短时间内震惊我两次!2哥 :哎,人家怎......
  • 捕鱼达人 java实现
    开始页面运行页面......
  • 用java制作
    serverpackagechat;importjava.io.DataInputStream;importjava.io.DataOutputStream;importjava.io.EOFException;importjava.io.IOException;importjava.net.BindException;importjava.net.ServerSocket;importjava.net.Socket;importjava.net.SocketException;im......
  • 请查收这份 6.3k star的 Java 攻城狮学习指南!
    大家好,我是Java陈序员。自从一入Java开发的坑,可谓是每天过得神清气爽(水深火热)。每天不是被项目经理赶进度,就是被测试小姐姐追着改Bug!都没有时间好好学习(摸鱼)了!今天给大家介绍一份Java学习指南,无论是新手还是老鸟,皆可食用!新手可以用来学习找工作,老鸟可以用来跳槽面试复习......
  • java集合
    java集合2023.11.5集合可以动态的保存任意多个对象提供一系列的操作对象方法使用集合添加,删除新元素,简洁集合的框架体系图Iterator对象称为迭代器,主要用于遍历Collection集合中的元素所有实现了Collection接口的的集合类都有一个iterator()方法,用以返回......
  • Java开发者的Python快速进修指南:控制之if-else和循环技巧
    简单介绍在我们今天的学习中,让我们简要了解一下Python的控制流程。考虑到我们作为有着丰富Java开发经验的程序员,我们将跳过一些基础概念,如变量和数据类型。如果遇到不熟悉的内容,可以随时查阅文档。但在编写程序或逻辑时,if-else判断和循环操作无疑是我们经常使用的基本结构。毕竟,......
  • Java秋招学习路线
    Java秋招学习路线前期:JVM+JUC+Redis+Mysql+项目(实际的项目或者网上找的项目)+力扣面试笔刷100题后期:边投简历边看八股MySql:MySql45讲链接:https://pan.baidu.com/s/1IEViw6E9SWmtgpot8Cdeug提取码:hsqf--来自百度网盘超级会员V6的分享Redis:黑马点评,可以当做简历里的一个项......
  • 数据结构之二叉树的遍历2(java)
    一:概述二叉树的深度遍历3种方式:前序遍历、中序遍历、后序遍历。下面是具体的这三种方式的遍历代码。二:具体概述用递归的方式实现前序遍历、中序遍历、后序遍历。publicclassTreeNodeTraveral{/***构建二叉树**@paraminputList输入序列*/......
  • 25届实习秋招-Java面试-MySQL数据库面试题整理-牛客网近一年
    MySQL概述:关系型数据和非关系型数据库的区别,有哪些应用场景有哪些非关系的单表操作:三种SQL语言类型,MySql本身常用命令DDL-数据定义语句:表的常用操作truncate/delete--drop操作的区别varchar最大字节数DMLUpdate语句的sql执行流程对行数据的修改是......
  • IDEA创建第一个JAVA项目,带你认识Java工程中的项目结构
    不管学习那门编程语言,掌握当下流行的集成开发环境是必不可少的。当然仍有多年前的大佬,因为那会的“艰苦条件”,仍有保留着使用文本编辑器编写代码的习惯。对于JAVA来说两大集成开发环境非常受大家青睐!IDEA和eclipse。今天这里将以IDEA为例,带大家认识一个Java工程中应该有哪些......