java关键字static

下面是关于静态方法的测试类,自己运行一遍,不再啰嗦了。

public class StaticTest {

	{	// 这样没有static关键字的,叫隐式static,系统执行完显式static后会接着执行隐式static的代码
		System.out.println("hide static");
		show(); // 这个方法不是static的,但是在这里不会出错
	}

	static { // 这样有static关键字的叫显式static,系统会先执行显式static的代码
		System.out.println("static");
		// show(); //这个方法不是static的,所以会出错
	}

	public StaticTest() { // 执行完显式和隐式static后,系统会执行构造器的代码,因为构造器没有static,但也会被执行,跟隐式static一样,所以书上就把它说成隐式static了
		System.out.println("constuctor");
	}

	public void show() {
		System.out.println("show");
	}

	public static void main(String[] args) {
		new StaticTest();
	}

}

 

运行结果:

 

static
hide static
show
constuctor

 

你可能感兴趣的:(java关键字)