静态代码块

原创 2015年07月09日 21:16:22

静态代码块:

格式:

static

{

         静态代码块中的执行语句。

}

特点:随着类的加载而执行,只执行一次。并优先于主函数;

用于给类进行初始化

class StaticCode
{
	static
	{
		System.out.println("a");
	}
}
class StaticCodeDemo
{
	static
	{
		System.out.println("b");
	}
	public static void main(String[] args)
	{
		new StaticCode();
		new StaticCode();
		System.out.println("over");
	}
	static
	{
		System.out.println("c");
	}
}


只有一个a!!!

class StaticCode
{
	static
	{
		System.out.println("a");
	}
}
class StaticCodeDemo
{
	static
	{
		//System.out.println("b");
	}
	public static void main(String[] args)
	{
		//new StaticCode();
		//new StaticCode();
		//System.out.println("over");
		StaticCode s=null;//只引用类类型
	}
	static
	{
		//System.out.println("c");
	}
}


当我们只引用类类型时,此时并未用到类中的内容,此时类不会加载,所以不会打印出a;

 

 

 

 

版权声明:本文为博主原创文章,未经博主允许不得转载。

Java 静态代码块和非静态代码块

参考:http://uule.iteye.com/blog/1558891Java中的静态代码块是在虚拟机加载类的时候,就执行的,而且只执行一次。如果static代码块有多个,JVM将按照它们在类中出...
  • kunlyy
  • kunlyy
  • 2016年08月10日 21:09
  • 1258

JAVA静态代码块的作用

一 般情况下,如果有些代码必须在项目启动的时候就执行的时候,需要使用静态代码块,这种代码是主动执行的;需要在项目启动的时候就初始化,在不创建对象的情 况下,其他程序来调用的时候,需要使用静态方法,这种...
  • CarryBest
  • CarryBest
  • 2017年02月07日 10:26
  • 1169

静态关键字static和静态代码块、局部代码快、构造代码块

一、静态什么时候使用? 1、静态变量 分析对象中所具备的成员变量的值都相同时,而且这个成员不需要修饰,这时成员变量就可以被静态修饰 2、静态函数 该函数是否需要访问对象...
  • u011809714
  • u011809714
  • 2015年10月29日 19:44
  • 3431

JAVA继承关系中静态代码块、非静态代码块的执行顺序

类的代码在初次使用时才加载(每个类的编译代码都存在于它自己的独立文件中,.class文件),是指加载发生在创建类的第一个对象的时候,但是当访问static方法和static域的时候,也会发生加载(构造...
  • davistang
  • davistang
  • 2015年03月18日 23:09
  • 1456

static{}静态代码块与{}普通代码块之间的区别

static{}(静态代码块)与{}(非静态代码块)的异同点 相同点:都是在JVM加载类时且在构造方法执行之前执行,在类中都可以定义多个,     一般在代码块中对一些static变量进行赋值。 ...
  • qinaide_lixiaoshuo
  • qinaide_lixiaoshuo
  • 2013年11月24日 16:05
  • 7960

static 静态变量和静态代码块的执行顺序

众所周知 在android中static 修饰的会被称之为 静态常量, 静态变量, 静态方法 ,还有就是静态代码块,用static{ // 代码块 非static修饰的方法,变量,常量, 是不能再静态...
  • a22422931
  • a22422931
  • 2017年01月22日 16:55
  • 4118

java基础之静态代码块,局部代码块,构造代码块区别。

java中有几种常见的代码块,那怎样区别他们呢? 这里就这些问题,浅谈下我个人的理解。 1.局部代码块 局部代码块,又叫普通代码块。它是作用在方法中的代码块。例如: public void s...
  • jatpen
  • jatpen
  • 2017年08月02日 14:36
  • 314

java静态和非静态代码块的执行顺序

1、静态代码块是在类加载时自动执行的,非静态代码块在创建对象自动执行的代码,不创建对象不执行该类的非静态代码块。 顺序: 静态代码块--》非静态代码块--》类构造方法。  2、在静态方法里面只能直...
  • fengzijia
  • fengzijia
  • 2015年11月19日 22:39
  • 1850

Java静态代码块、构造代码块、构造方法的执行顺序

Java静态代码块、构造代码块、构造方法的执行顺序静态代码优先于非静态的代码,是因为被static修饰的成员都是类成员,会随着JVM加载类的时候加载而执行,而没有被static修饰的成员也被称为实例成...
  • kingzone_2008
  • kingzone_2008
  • 2015年04月12日 22:55
  • 19497

Java中静态代码块、非静态代码块、构造函数的执行顺序与作用

一、观察一段源码与结果 public class StaticDemo { private static int i=1; static { System.out.println("static前代码...
  • lezizai_happy
  • lezizai_happy
  • 2015年07月16日 18:09
  • 1535
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:静态代码块
举报原因:
原因补充:

(最多只允许输入30个字)