신기하다

2084 단어 static
static는'전역'또는'정적'이라는 뜻으로 변수나 방법을 수식하거나 static 정적 블록을 형성하는 데 사용된다.static에 의해 수식된 구성원 변수와 구성원 방법은 이 종류의 모든 대상에 독립됩니다.즉, 이것은 클래스의 특정한 실례에 의존하지 않고 클래스의 모든 실례에 의해 공유된다는 것이다.따라서 static 대상은 그 대상이 만들어지기 전에 접근할 수 있으며, 그 대상을 인용할 필요가 없습니다.
static의 몇 가지 용법에 대해 제가 작은 테스트를 해봤습니다. 이어서 여러분과 공유하겠습니다!
       1.내부 클래스에서static 사용
일반 클래스가 정적이라면 오류가 발생하고static를 제거하라고 알릴 수 있지만 내부 클래스는 그렇지 않습니다.내부 클래스가 정적일 때, 이러한 클래스를 일반 클래스로 직접 사용할 수 있으며, 외부 클래스를 다시 실례할 필요가 없다.
package lyd_static_tester20130804;

public class tester1 {
	public static void main (String[] args){
		static_class.static_class_fu sc = new static_class.static_class_fu();
	}

}

 
package lyd_static_tester20130804;

public class static_class {
	public static class static_class_fu {
		static_class_fu() {
		System.out.println(" !");
		}
	}
}

 
     2.방법을 정의할 때static의 사용
 
만약 하나의 방법이 static라고 성명된다면, 이 방법을 호출할 때 이 종류의 대상을 실례화할 필요가 없습니다.
 
 
package lyd_static_tester20130804;

public class tester2 {
	public static void static_method(){
		System.out.println(" !!!");
	}
	public static void main (String[] args){
		static_method();
		}
}

    3.변수를 정의할 때 static 사용
어떤 의미에서 보면 하나의 변수를 정의할 때 이를 static라고 성명하는데 실제로는 이를 전역 변수로 정의하는 것이다.
package lyd_static_tester20130804;

public class tester3 {
	static int i=1;
	
	public void count(){
		i++;
	}

	public static void main(String[] args) {
		tester3 t = new tester3();
		t.count();
		System.out.println(" ,i 1, "+i);
	}
}

    4.정적 코드 블록(static{})
 
static 코드 블록도 정적 코드 블록이라고 하는데 클래스에서 클래스 구성원에 독립된 static 문장 블록으로 여러 개가 있을 수 있고 위치는 마음대로 놓을 수 있으며 그 어떠한 방법에도 포함되지 않는다.static 코드 블록이 여러 개 있으면 JVM은 클래스에 나타나는 선착순으로 실행하고 각 코드 블록은 한 번만 실행됩니다.

좋은 웹페이지 즐겨찾기