java继承中的初始化顺序
初始化顺序:父类的静态变量-->父类的静态代码块-->子类的静态变量-->子类的静态代码快-->父类的非静态变量(父类的非静态代码块)-->父类的构造函数-->子类的非静态变量(子类的非静态代码块)-->子类的构造函数
值得注意的是:父类的非静态变量(父类的非静态代码块)是同一级的,看哪个部分写在类的最前面谁就先被执行,子类的非静态变量(子类的非静态代码块)也是一样。
验证代码:
package com.hts.test;public class Test {public static void main(String[] args) { Child c=new Child(); } } class Parent { public static PrintMessage a=new PrintMessage("父类静态成员被初始化"); private PrintMessage b=new PrintMessage("父类非静态成员被初始化"); static{ System.out.println("父类的静态代码块被执行"); } { System.out.println("父类的非静态代码块被执行"); } public Parent(){ System.out.println("父类的构造方法被执行"); } } class Child extends Parent{ public static PrintMessage a1=new PrintMessage("子类静态成员被初始化"); private PrintMessage b1=new PrintMessage("子类非静态成员被初始化"); static { System.out.println("子类的静态代码块被执行"); } { System.out.println("子类的非静态代码块被执行"); } public Child(){ System.out.println("子类的构造函数被执行"); } } class PrintMessage{ public PrintMessage(String mes){ System.out.println(mes); } }
输出结果:
java继承中的初始化顺序相关推荐
- Java类中的初始化顺序
根据<Thinking in Java>相关章节及自己的理解举例来说明类初始化顺序. public class InitialOrder {private static String st ...
- java的子类调用构造器的顺序_深入剖析Java继承中的初始化与构造器调用关系
声明:本文为牛旦教育原创,所有权保留,转载请注明来源. 一个对象有两件事:状态和行为. 类中的实例变量表示其对象的状态. 实例方法表示其对象的行为. 类的每个对象都保持自己的状态. 创建类的对象时,将 ...
- Java类中变量初始化顺序
下面代码显示了静态初始化代码块,非静态实例初始化代码块,构造函数 等在Java中从代码载入内存到代码执行过程的执行顺序: import static net.mindview.util.Print.* ...
- c++构造函数以及类中变量初始化顺序
c++构造函数以及类中变量初始化顺序 Submitted by ant on Fri, 03/29/2013 - 20:05 构造函数 c++ 的类提供了一种抽象机制,使用起来要比 c 方便很多.为了 ...
- C#中成员初始化顺序
C#中成员初始化顺序 http://blog.csdn.net/huangcailian/article/details/25958967 一.成员初始化整体顺序 1.成员赋值初始化先于构造函数: 2 ...
- java 继承 子类 实例化_关于Java继承中父类和子类构造函数的问题
Java子类在实例化时默认调用的是父类的无参构造函数,不论实例化时调用的是子类的有参还是无参构造函数, 1.当父类没有显式定义构造方法时, 编辑器会默认为此类添加一个隐式无参构造函数.此时子类可以有自 ...
- 转转转!java继承中的this和super
学习java时看了不少尚学堂马士兵的视频,还是挺喜欢马士兵的讲课步骤的,二话不说,先做实例,看到的结果才是最实际的,理论神马的全是浮云.只有在实际操作过程中体会理论,在实际操作过程中升华理论才是最关键 ...
- 【总结篇】继承中的执行顺序
作者:✿✿ xxxflower. ✿✿ <总结篇> 这个专题就记录一些自己在练习中所学习到的. 包括一些不熟悉的芝士点和一些小的细节. 今天我们来总结一下继承中的执行顺序. 首先执行静态的 ...
- java 初始化顺序_Java中对象初始化顺序的详细介绍
前言 在Java中,一个对象在可以被使用之前必须要被正确地初始化,这一点是Java规范规定的.最近我发现了一个有趣的问题,这个问题的答案乍一看下骗过了我的眼睛.看一下这三个类: package com ...
最新文章
- 从60多场技术面试中,我总结了这份面试经验
- 深度学习助力网络科学:基于深度学习的社区发现最新综述
- 【每周NLP论文推荐】 聊天机器人中FAQ相关的论文推荐
- android api 相机,具有相机2 API的Android Lollipop上的ZSL功能
- SAP 那点事BW HANA
- winform响应时间最长是多少分钟_东营岩石流变仪多少钱 电液伺服加载系统_朝阳试验仪器东营岩石流变仪多少钱...
- 初一到初三需要用计算机吗,初一到初三不注意这8点,就等着中考完后悔吧!...
- 服务器搭建网站完整教程(宝塔面板+wordpress) 快速搭建网站 一键部署
- 华为云该网站服务器错了,云服务器选错镜像版本
- Quartz.NET 配置文件详解
- bpsk调制及解调实验_【详解】5G的调制与解调
- Udacity机器学习入门笔记——数据集与问题
- oracle12c关闭pdb,oracle 12c pdb启动与关闭
- 因为计算机丢失user32.dll,Win7系统出现无法定位动态链接库user32.dll错误提示解决方法...
- Pyrene-PEG3400-NHS,琥珀酰亚胺酯(NHS)官能化的芘-PEG
- 神经网络研究主要内容,神经网络的起源和发展
- SQL中with as用法
- 《Oracle 19c从入门到精通(视频教学超值版)》简介
- 【驱动模块】 -- linux的背光(backlight)子系统【转】
- 统计学习导论(五)重抽样法——习题
热门文章
- 01《构建之法》阅读笔记01
- 51nod1464(trie + dfs)
- 名企笔试:京东 2016 算法工程师笔试题(登楼梯)
- KVM源代码阅读--内核版本3.17.4
- 10 个步骤让你成为高效的 Web 开发者
- linux线上CPU100%排查
- Spring Bean初始化的几种方法以及执行顺序
- 一元多项式计算器_人教版初中数学七年级上册——去括号、去分母解一元一次方程公开课优质课课件教案视频...
- 【小程序案例】支付宝小程序-MQTT模器,IoT设备通过WSS接入阿里云IoT物联网平台...
- Spark:windows下配置spark开发环境