>  기사  >  Java  >  Java에서 static을 사용해야 하는 경우

Java에서 static을 사용해야 하는 경우

王林
王林원래의
2019-12-04 17:59:094179검색

Java에서 static을 사용해야 하는 경우

사용 시기:

메서드나 변수를 초기화하고 로드해야 하거나 자주 호출될 때 static를 추가할 수 있습니다. static으로 수정된 메서드는 클래스 이름을 사용하여 직접 호출할 수 있습니다. 그렇지 않은 경우 호출하기 전에 개체를 인스턴스화해야 합니다.

단점:

초기 로딩은 메모리를 많이 차지하므로 자주 사용하지 않는 메소드에는 이 키워드를 추가하지 않는 것이 좋습니다.

계산을 통해 정적 변수를 초기화해야 하는 경우 정적 블록을 선언하면 클래스가 로드될 때 정적 블록이 한 번만 실행됩니다.

추천 Java 관련 비디오 튜토리얼: java 온라인 튜토리얼

아래 예제는 정적 메소드, 일부 정적 변수 및 정적 초기화 블록이 있는 클래스를 보여줍니다.

샘플 코드:

// Demonstrate static variables,methods,and blocks.
class UseStatic {
static int a = 3;
static int b;
static void meth(int x) {
System.out.println("x = " + x);
System.out.println("a = " + a);
System.out.println("b = " + b);
}
static {
System.out.println("Static block initialized.");
b = a * 4;
}
public static void main(String args[]) {
meth(42);
}
}

UseStatic 클래스가 로드되면 모든 정적 문이 실행됩니다.

먼저 클래스 속성 변수가 할당되기 시작하고 a는 3으로 설정되고 b는 기본적으로 0으로 초기화된 다음 정적 블록이 실행되어 실행되고(메시지 인쇄) 마지막으로 b는 a*로 초기화됩니다. 4 또는 12. 그런 다음 main()이 호출되고, main()이 meth()를 호출하여 값 42를 x에 전달하고, 세 개의 println() 문이 두 개의 정적 변수 a와 b, 지역 변수 x를 참조합니다.

참고: 정적 메서드에서 인스턴스 변수를 참조하는 것은 불법입니다.

실행 결과:

Static block initialized.
x = 42
a = 3
b = 12

추천 관련 기사 및 튜토리얼: Java 프로그래밍 소개

위 내용은 Java에서 static을 사용해야 하는 경우의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.