>  기사  >  Java  >  Java의 최종 및 정적 키워드 소개

Java의 최종 및 정적 키워드 소개

零下一度
零下一度원래의
2017-07-21 16:45:031857검색
1. Final

최종 클래스는 상속될 수 없습니다. 최종 클래스의 메서드는 기본적으로 final입니다.

최종 메서드는 하위 클래스의 메서드로 재정의될 수 없습니다. 상속됨

final 멤버 변수는 한 번만 할당할 수 있고 할당 후에 변경할 수 없는 상수를 나타냅니다.

final은 생성자를 수정하는 데 사용할 수 없습니다.

private은 하위 클래스 메서드로 재정의될 수 없습니다.

final에 의해 수정되는 변수에는 세 가지 유형이 있습니다. 정적 변수, 인스턴스 변수 및 지역 변수는 각각 세 가지 유형의 상수를 나타냅니다.

참고: 최종 변수를 정의할 때 초기 값을 제공하지 않고 먼저 선언할 수 있습니다. 이 변수는 상황에 관계없이 사용하기 전에 공백 최종을 초기화해야 함을 보장합니다.

2. static

Static은 "전역" 또는 "정적"을 의미하며, 정적 정적 코드 블록을 형성할 수도 있지만 전역 변수는 없습니다. 자바 언어 개념에서.修 Static에 의해 수정된 멤버 변수와 멤버 메서드의 모든 개체는 범주의 개체와 독립적입니다. 즉, 클래스의 특정 인스턴스에 의존하지 않고 클래스의 모든 인스턴스에서 공유됩니다. 이 클래스가 로드되기만 하면 Java Virtual Machine은 기본적으로 클래스 이름을 기준으로 런타임 데이터 영역의 메소드 영역에서 해당 클래스를 찾을 수 있습니다. 따라서 정적 개체는 해당 개체가 생성되기 전에 개체를 참조하지 않고 액세스할 수 있습니다.

                                                                                                                                                                                                            " 이것은 중요합니다. 실제로 프라이빗은 액세스 권한 제한을 의미하고 정적은 인스턴스화 없이 사용할 수 있다는 것을 의미하므로 이해하기가 훨씬 쉽습니다. static 앞에 다른 액세스 권한 키워드를 추가하는 효과도 동일합니다. C i 정적 수정 멤버 변수 및 멤버 메서드는 클래스 이름을 통해 직접 액세스할 수 있습니다.
클래스 이름(매개변수 목록...) 클래스 이름입니다. 정적 변수 이름
              static으로 수정된 코드 블록은 JVM(Java Virtual Machine)이 클래스를 로드할 때 코드 블록이 실행됩니다.

1. 정적 변수
클래스 멤버 변수는 정적인지 여부에 따라 두 가지 유형으로 분류할 수 있습니다. 하나는 정적 변수라고 하는 정적 변수이고 다른 하나는 수정되지 않는 변수입니다. 정적, 변수 인스턴스 변수라고 합니다. 둘 사이의 차이점은 다음과 같습니다.
메모리에 정적 변수의 복사본이 하나만 있습니다(메모리 절약을 위해). JVM은 정적 변수에 대해 메모리를 한 번만 할당합니다. 정적 변수의 메모리 할당은 클래스 로딩 중에 완료됩니다. 프로세스이며 클래스 이름으로 직접 액세스할 수 있습니다(편리함). 물론 객체를 통해 액세스할 수도 있습니다(권장하지는 않음). ㅋㅋㅋ 예 생성되면 인스턴스 변수에 대해 메모리가 한 번 할당됩니다. 인스턴스 변수는 서로 영향을 주지 않고 메모리에 여러 복사본을 가질 수 있습니다(유연함).态静2, 정적 메서드
정적 메서드는 클래스 이름을 통해 직접 호출할 수 있으며 어떤 인스턴스라도 호출할 수 있습니다. 따라서 정적 메서드에서 This 및 Super 키워드는 사용할 수 없으며 static) 멤버 메서드만 사용할 수 있습니다. 정적 멤버 변수와 해당 변수가 속한 클래스의 멤버 메서드에 액세스합니다. 인스턴스 멤버는 특정 개체와 연결되어 있기 때문입니다! 이것은 암기하는 것이 아니라 이해하고 이해하는 것이 필요합니다! ! !
정적 메서드는 모든 인스턴스와 독립적이므로 정적 메서드를 구현해야 하며 추상화할 수 없습니다. t t3에서는 정적 코드 블록
정적 코드 블록이라고도 하며 클래스 내에서 독립적인 정적 문장 블록입니다. 이러한 정적 코드는 없습니다. 정적 코드 블록이 여러 개인 경우 JVM은 클래스에 나타나는 순서대로 이를 실행합니다. 각 코드 블록은 한 번만 실행됩니다. At4, Static, FINAL은 Static Final이 멤버 변수와 멤버쉽 방법을 수정하는 데 사용됨을 나타내는 데 사용됩니다. 이는 간단히 "전역 상수"로 이해될 수 있습니다!
​​​​변수의 경우, 값이 주어지면 수정할 수 없으며 클래스 이름을 통해 액세스할 수 있음을 의미합니다.
메서드의 경우 재정의할 수 없으며 클래스 이름을 통해 직접 액세스할 수 있음을 의미합니다.
ㅋㅋㅋ                                                    static 및 final로 수정되는 인스턴스 상수의 경우 인스턴스 자체를 변경할 수 없지만, 일부 컨테이너 유형(예: ArrayList, HashMap)의 인스턴스 변수의 경우 컨테이너 변수 자체는 변경할 수 없지만 컨테이너에 저장된 개체는 변경할 수 있습니다. 프로그래밍에서 많이 사용되는 수정된 내용입니다.
 static final로 수정된 컨테이너 유형 변수에 "installed"된 개체가 변경될 수 있습니다.

위 내용은 Java의 최종 및 정적 키워드 소개의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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