java静态块的执行顺序
来源:互联网 发布:linux 挂起 编辑:程序博客网 时间:2024/06/05 19:38
以本文代码为例。
类开始加载时,按照顺序执行:
1.定义count1的类型
2.实例化Test:执行代码块,执行构造方法。 此时count1=2,count2=2
3.定义count2的类型。 此时count1=2,count2=0
4.执行静态代码块。静态代码块只有类首次加载进内存时调用一次,只此一次。 此时count1=3,count2=1
5.进入main函数。又一次实例化Test,即执行代码块,再执行构造方法。 此时count1=5,count2=3
代码如下:
public class Test {
public static int count1;public static Test test=new Test();
public static int count2=0;
public Test(){
count1++;
count2++;
System.out.println("调用了构造方法");
}
{
count1++;
count2++;
System.out.println("调用了代码块");
}
static{
count1++;
count2++;
System.out.println("调用了静态代码块");
}
public static void main(String[] args){
System.out.println("实例化");
new Test();
System.out.println("count1="+Test.count1);
System.out.println("count2="+Test.count2);
}
}
输出结果:
调用了代码块
调用了构造方法
调用了静态代码块
实例化
调用了代码块
调用了构造方法
count1=5
count2=3
0 0
- java 静态块与非静态块的执行顺序
- java静态块的执行顺序
- java静态块,普通块,构造函数的执行顺序
- java静态和非静态代码块的执行顺序
- 关于Java中的静态块,非静态块,子类父类的静态块,非静态块的执行顺序
- 关于Java中的静态块,非静态块,子类父类的静态块,非静态块的执行顺序
- Java的静态块、模块、构造方法的执行顺序
- Java的静态块、模块、构造方法的执行顺序
- Java的静态块、模块、构造方法的执行顺序
- java 中的静态块 构造方法 等的执行顺序
- Java 静态代码块和Main函数的执行顺序
- java中静态代码块的执行顺序
- java 静态块 非静态块 构造方法 执行顺序
- JAVA 构造函数,静态块,非静态块执行顺序
- [JAVA]静态代码块及执行顺序
- java 基础,静态块,程序执行顺序
- java 静态代码块执行顺序
- java静态代码块执行顺序
- 【机器学习算法】之logistic回归
- 一步一步在Windows下搭建React Native Android开发环境
- 【翻译+原创】DeepFace: Closing the Gap to Human-Level Performance in Face Verification 论文笔记
- koa2快速搭建api服务器-创建路由及定义GET和POST请求
- 记录一些开源项目
- java静态块的执行顺序
- Hadoop日志存放路径详解
- ARM基础了解
- 系统默认的刷新方法(UIRefreshControl)
- Spring JdbcTemplate Exception摘记
- 【论文学习笔记】Joint Cascade Face Detection and Alignment
- 可重入和线程安全
- Computer System: A programmer's perspective 深入理解计算机操作系统(读书笔记)
- Android 之Activity