0
点赞
收藏
分享

微信扫一扫

Class loader:static

码农K 2022-08-24 阅读 55

 

package classloader;

public class ClassLoaderDisplayDemo {
public static void main(String[] args) {
Person person = new Person();
person.process();
}
}

class Person {
static {
no = 5;//只能对后面的静态变量no赋值,不能进行其它操作
}

private static int no;//如果对no进行赋值操作,则上面static块中对no的赋值操作的结果会被此次的操作覆盖
private String name = getClass().getName();

{
System.out.println("Block:" + name);
System.out.println("Block:no-->" + no);
no = no + 1;
System.out.println("Block:no-->" + no);
}

static {
no = no + 1;
System.out.println("no:" + no);
}

public Person(String name) {
this.name = name;
}

public Person() {
System.out.println("Name:" + name);
}

public void process() {
System.out.println("process-->Name:" + name);
}
}

Output:

no:6
Block:classloader.Person
Block:no-->6
Block:no-->7
Name:classloader.Person
process-->Name:classloader.Person

 



举报

相关推荐

0 条评论