java 静态代码块 非静态代码块

java中的静态代码块在类加载的时候调用(只调用一次),普通代码块在创建对象(只要创建新的对象都会调用一次)的时候调用,普通代码快的调用在构造方法之前

public class PuTong {
public PuTong(){
System.out.print("默认构造方法!-->");
}

//非静态代码块
{
System.out.print("非静态代码块!-->");
}

//静态代码块
static{
System.out.print("静态代码块!-->");
}

public static void test(){
{
System.out.println("普通方法中的代码块!");
}
}
}
public class TestClass {

/**
* 区别两次new静态与非静态代码块执行情况
*/
public static void main(String[] args) {
PuTong c1 = new PuTong();
c1.test();

PuTong c2 = new PuTong();
c2.test();
}
}

 

 

输出结果

 

 

参考:JAVA静态代码块的作用 - Gordon管 - 博客园 (cnblogs.com)

posted @ 2022-10-17 19:47  见怪见外  阅读(39)  评论(0编辑  收藏  举报