一个类中执行顺序:
静态变量
静态代码块
代码块
构造方法
子类和父类执行顺序:
父类静态变量
父类静态代码块
子类静态变量
子类静态代码块
父类代码块
父类构造方法
子类代码块
子类构造方法
直接看代码,一目了然。
public class Test { public static void main(String[] args) {
new A();
/* 结果:
* A静态变量
A静态代码块
A代码块
A构造方法
* */
new B();
/*
* 结果:
* A静态变量
A静态代码块
B静态变量
B静态代码块
A代码块
A构造方法
B代码块
B构造方法
* */
} }
class A{
static C c =new C("A");
{
System.out.println("A代码块");
}
static {
System.out.println("A静态代码块");
}
public A(){
System.out.println("A构造方法");
}
} class B extends A{
static C c =new C("B");
{
System.out.println("B代码块");
}
static {
System.out.println("B静态代码块");
}
public B(){
System.out.println("B构造方法");
} } class C {
public C(String str){
System.out.println(str+"静态变量");
}
}
java代码块,静态代码块,静态变量,构造方法执行顺序的更多相关文章
-
Java父类与子类中静态代码块 实例代码块 静态变量 实例变量 构造函数执行顺序
实例化子类时,父类与子类中的静态代码块.实例代码块.静态变量.实例变量.构造函数的执行顺序是怎样的? 代码执行的优先级为: firest:静态部分 second:实例化过程 详细顺序为: 1.父类静态 ...
-
【转】java静态代码块和构造方法执行顺序
先看看下面几个类,然后判断它们的输出public class A { static{System.out.print(1);}public A(){System.out.print(2);}} pub ...
-
java面试基础题------》Java 中的父子类静态代码块,代码块,构造方法执行顺序
4.指出下面程序的运行结果. class A { static { System.out.print("1"); } public A() { System.out.print(& ...
-
Java学习之代码块(静态,构造代码块,构造方法)执行顺序
静态代码块 static{ 代码 } 随着类的加载而加载,随类的消失而消失,存在于类中,方法外,最先执行,且只加载1次,可用来加载驱动及初始化对象属性. 构造代码块 { } 也存在于类中, ...
-
Java静态语句块、语句块、构造方法执行顺序
package com.imooc.practice; class Parent{ public Parent(){ System.out.println("Parent构造方法执行!&qu ...
-
JAVA变量的执行顺序
对于静态变量.静态初始化块.变量.初始化块.构造器,它们的初始化顺序以此是(静态变量.静态初始化块)>(变量.初始化块)>构造器.我们也可以通过下面的测试代码来验证这一点: package ...
-
【Java】成员变量赋值执行顺序
程序中成员变量赋值的执行顺序
-
Java基础 静态块、非静态块、构造函数的执行顺序
Java中经常有一些静态块,这是用来在生成类之前进行的初始化,无论java还C++语言中的static,都是最先初始化好的.结构如下: static { 静态语句代码块 } { 非静态语句代码块 } ...
-
[备忘]java 静态块、非静态块、静态函数、构造函数 执行顺序
原文链接:http://liqita.iteye.com/blog/1472717 java中经常有一些静态块,这是用来在生成类之前进行的初始化,无论java还C++语言中的static,都是最先初始 ...
随机推荐
-
JavaScript设计模式——状态模式
状态和行为: 所谓对象的状态,通常指的就是对象实例的属性的值:而行为指的就是对象的功能,再具体点说,行为大多可以对应到方法上. 状态模式的功能就是分离状态的行为,通过维护状态的变化,来调用不同状态对应 ...
-
Windows 7 不同安装模式简要区别(图解)
★ 你可能对GHOST不支持AHCI感到迷惑,实际上,写过GHOST一键安装批处理的都知道一个叫FINDCD.EXE的小程序,可是这个程序老 了,AHCI模式光驱他找不到了,找不到光驱动意味着光盘中G ...
-
javascript焦点图(能够自己主动切换 )
/* 思路总结: 1.实现图片滚动的function.鼠标经时候获取当前li的index.设置ndex自己主动递增的函数.实现淡入淡出效果的函数 2.整个实现效果一传递index为主线 3.我的编写代 ...
-
java遍历复杂json字符串获取想要的数据
https://blog.csdn.net/qq_34309663/article/details/80508125 java如何解析复杂的json数据关于json处理的包有好几个,比如jackson ...
-
[dart学习]第四篇:函数和操作符(本篇未完待续)
接着学习dart的函数和操作符. 1.函数Function dart是一种真正的面向对象的语言,通常一个函数也是Function类型的对象,这也就是说可以把函数赋值给一个变量,或者作为另一个函数的入参 ...
-
css布局方式总结
### 居中布局 ### 一.水平居中 * 要求:子元素于父元素水平居中且其(子元素与父元素)宽度均可变. ```` javacript <div class="parent" ...
-
第16月第15天 glut
1. https://tokoik.github.io/opengl/libglut.html https://github.com/wistaria/wxtest/tree/master/C htt ...
-
What Are You Talking About HDU1075
一开始我也想用map 但是处理不好其他字符.. 看了题解 多多学习! 很巧妙 就是粗暴的一个字符一个字符的来 分为小写字母和非小写字母两个部分 一但单词结束的时候就开始判断. #includ ...
-
创建自己的PKI公/私密钥对和公钥证书
1. 创建certificate request configuration file cert_req.conf******************************************* ...
-
MVC5 学习笔记 controller
主要参考书籍<ASP.NET MVC5 高级编程(第5版) > 作者:Jon Galloway等 1. MVC 表示 模型-视图-控制器.MVC是一种用于开发应用程序的模式,具备良好的架构 ...