JAVA 에서 final 키워드 의 사용, 의미, final 변수 와 final 방법 deng

4341 단어 자바
(1) final 키워드 의 의미
final 은 자바 에서 보 존 된 키워드 로 구성원 변수, 방법, 클래스 와 로 컬 변 수 를 설명 할 수 있 습 니 다.성명 을 final 로 인용 하면 이 인용 을 바 꿀 수 없습니다. 컴 파일 러 는 코드 를 검사 합 니 다. 변 수 를 다시 초기 화 하려 고 하면 컴 파일 러 는 컴 파일 오 류 를 보고 합 니 다.
(2) final 변수
구성원 변수 나 로 컬 변수 (방법 이나 코드 블록 에 있 는 변 수 를 로 컬 변수 라 고 함) 를 final 이 라 고 하 는 것 을 모두 final 변수 라 고 합 니 다.final 변 수 는 static 키워드 와 함께 자주 사용 되 며 상수 로 사 용 됩 니 다.다음은 final 변수의 예 입 니 다.
final String LOAN = "loan";LOAN="snsad";//컴 파일 오류, LOAN 변 수 는 중복 복사 할 수 없습니다.
final 변 수 는 읽 기 전용 입 니 다.
(3) final 방법
이 방법 은 이불 류 의 방법 으로 다시 쓰 면 안 된다 는 뜻 이다.만약 당신 이 한 방법의 기능 이 이미 충분히 완전 하 다 고 생각한다 면, 하위 클래스 에서 바 꿀 필요 가 없다 면, 당신 은 이 방법 을 final 이 라 고 설명 할 수 있 습 니 다.
성능: final 방법 은 비 final 방법 보다 빠 릅 니 다. 컴 파일 할 때 정적 으로 연결 되 어 있 기 때문에 실행 할 때 동적 으로 연결 할 필요 가 없습니다.다음은 final 방법의 예 입 니 다.
1
2
3
4
5
6
7
8
9
10
11
12
class Personal{
    public final String getName(){
        return "personal loan";
    }
}
 
class ChinesePersonal extends Personal{
    @Override
    public final String getName(){
        return "chinese personal"; //Cannot override the final method from Personal
    }
}
(4) final 클래스
final 클래스 는 일반적으로 기능 이 완전 하여 계승 할 수 없습니다. 자바 에는 많은 종류 가 final 입 니 다. 예 를 들 어 String, Interger 및 기타 포장 류 등 입 니 다.
다음은 final 클래스 의 인 스 턴 스 입 니 다.
1
2
3
4
5
6
7 final class Personal{
    public final String getName(){
        return "personal";
    }
}
 
class CheapPersonalLoan extends Personal{//The type CheapPersonalLoan cannot subclass the final class Personal
   
}

(5) final 키워드 의 장점
1) final 키 워드 는 성능 을 향상 시 킵 니 다. JVM 과 자바 응용 프로그램 은 모두 final 변 수 를 캐 시 합 니 다.
2) final 변 수 는 다 중 스 레 드 환경 에서 안전하게 공유 할 수 있 으 며 추가 적 인 동기 화 비용 이 필요 하지 않 습 니 다.
3) final 키 워드 를 사용 하면 JVM 은 방법, 변수 및 클래스 를 최적화 합 니 다.
(6) 가 변 류
가 변 하지 않 는 클래스 를 만 들 려 면 final 키 워드 를 사용 해 야 합 니 다. 가 변 하지 않 는 클래스 는 대상 이 생 성 되면 변경 할 수 없습니다. String 은 가 변 하지 않 는 클래스 의 대표 입 니 다. 가 변 하지 않 는 클래스 는 많은 장점 이 있 습 니 다. 예 를 들 어 대상 은 읽 기만 하고 다 중 스 레 드 환경 에서 안전하게 공유 할 수 있 으 며 추가 적 인 동기 화 비용 을 사용 하지 않 아 도 됩 니 다.
(7) final 에 대한 중요 한 지식
final 키 워드 는 구성원 변수, 로 컬 변수, 방법 및 클래스 에 사용 할 수 있 습 니 다. final 구성원 변 수 는 성명 할 때 초기 화 되 거나 구조 기 에서 초기 화 되 어야 합 니 다. 그렇지 않 으 면 컴 파일 오류 가 발생 합 니 다. final 변 수 를 다시 할당 할 수 없습니다. 로 컬 변 수 는 성명 할 때 값 을 부여 해 야 합 니 다. 익명 클래스 에서 모든 변 수 는 final 변수 여야 합 니 다. final 방법 은 다시 쓸 수 없습니다. final 클래스 는 계승 할 수 없습니다. final 키 워드 는 finally 키워드 와 달리 후 자 는 이상 처리 에 사 용 됩 니 다. final 키 워드 는 finalize () 방법 과 헷 갈 리 기 쉽 습 니 다. 후 자 는 Object 류 에서 정의 하 는 방법 으로 쓰레기 를 회수 하기 전에 JVM 에 호출 되 는 방법 입 니 다. 인터페이스 에 설 명 된 모든 변 수 는 final 입 니 다. final 과 abstract 라 는 두 키 워드 는 반대로 관련 되 어 있 으 며, final 류 는 abstract 일 수 없습니다. final 방법 은 컴 파일 단계 에서 바 인 딩 되 며 정적 바 인 딩 (static binding) 이 라 고 합 니 다. 설명 할 때 final 변 수 를 초기 화하 지 않 은 빈 final 변수 (blank final variable) 는 구조 기 에서 초기 화 하거나 this () 를 초기 화 해 야 합 니 다. 이렇게 하지 않 으 면 컴 파일 러 가 'final 변수 (변수 이름) 를 초기 화 해 야 합 니 다' 라 고 잘못 알 립 니 다. 클래스, 방법, 변 수 를 final 로 설명 하면 성능 을 향상 시 킬 수 있 습 니 다. 그러면 JVM 은 평가 한 다음 에 최적화 할 수 있 습 니 다. 자바 코드 관례 에 따 르 면 final 변 수 는 상수 이 고 보통 상수 명 은 대문자 로 써 야 합 니 다. 1 private final int COUNT = 10 ;
집합 대상 이 final 이 라 고 밝 힌 것 은 인용 이 변경 되 지 않 는 다 는 것 을 말 합 니 다. 그러나 그 중에서 내용 을 추가 하거나 삭제 하거나 변경 할 수 있 습 니 다. 예 를 들 어 1
2
3
4 private final List Loans = new ArrayList(); list.add(“home loan”);  //valid list.add( "personal loan" ); //valid loans = new Vector();  //not valid

좋은 웹페이지 즐겨찾기