개념
Final은 "변경되지 않은"의 의미를 가지며 비자 거래 클래스, 비 -추출자 회원의 방법 및 변수를 수정할 수 있습니다.
메모:
"메소드 커버리지"의 개념은 클래스의 구성 방법이 아니라 클래스의 구성 방법에만 적용되므로 최종은 구조 방법을 수정할 수 없다.
부모 클래스에서 비공개로 수정하는 방법은 서브 클래스의 방법으로 덮을 수 없으므로 기본적으로 비공개 유형 방법으로 이해할 수 있습니다.
최종 수업
이 클래스를 상속받을 수 없도록 클래스를 최종으로 정의하십시오. 특정 사용 시나리오는 다음과 같습니다.
예를 들어 JDK의 java.lang.string 클래스는 최종 유형으로 정의됩니다.
공개 최종 클래스 문자열 {...}
최종 방법
경우에 따라 안전상의 이유로, 부모 클래스는이 시점에서 서브 클래스가 특정 방법을 다루지 못하게합니다.
예를 들면 : JDK의 java.lang.object 클래스에서 getClass () 메소드는 최종 유형이며 equals () 메소드는 최종 유형이 아닙니다.
모든 객체 서브 클래스는 equals () 메소드를 커버 할 수 있지만 getClass () 메소드를 다룰 수는 없습니다.
최종 변수
변수 수정 변수는 값이 변경되지 않은 경우 상수를 나타냅니다.
예를 들어 : JDK java.lang.integer 클래스에 두 개의 상수가 정의되어 있습니다.
min_value = 0x80000000에 공개 정적 결승;
공개 정적 최종 int max_value = 0x7ffffffff;
최종 변수에는 다음 특성이 있습니다.
공개 클래스 데모 {public static int max_value = 23;
정적 상수는 일반적으로 대문자의 이름을 따서 명명되었으며 단어는 "_"기호로 분리됩니다.
공개 최종 테스트 {최종 int a = 1; 기본적으로 초기화되지 않으며 생성자를 초기화 할 수 있습니다.} static {d = 4; static constant는 기본적으로 초기화되지 않으며 정적 코드 블록에서 초기화합니다}}}.
최종 변수는 하나의 값만 제공 할 수 있습니다. 참조 유형 변수가 최종으로 수정되면 변수는 항상 하나의 객체로 참조 할 수 있지만 객체의 내용을 변경할 수 있습니다.
공개 클래스 FinalTest {String Str = "" "" "" "" "" "" "" "" "" "" "" ""; ltest = new FinalTest (); finalTest.str = "XixiHaha"; FinalTest.print (Print) );}}
요약 :
실제 프로그램에서 상수는 최종 수정자를 통해 정의됩니다.
위는이 기사의 모든 내용입니다.