java中有一种语法叫静态代码块,在什么情况下使用静态代码块比较合理呢?

        个人认为在给静态变量进行复杂的赋值操作的时候可以使用,现在有如下代码:

</pre><pre name="code" class="java">package test.codeBlock;

import java.util.Random;

public class StaticCodeBlock {
	public static StringBuffer messageBuffer = new StringBuffer("这是一个静态变量");
	
	static{
		Random random = new Random();
		messageBuffer.append("里面包含一个随机数").append(random.nextInt(1000));
	}
}

我们去调用静态变量messageBuffer的时候,会得到结果“这是一个静态变量里面包含一个随机数552”,因为静态代码块运行和静态变量的加载都是在java虚拟机加载类时进行的,所以当我们使用使用静态变量时,静态代码块里的语句已经执行,取到的结果是执行之后的结果
Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐