java에서final 키워드 사용 예시 상세 설명

3149 단어 final 키워드
final은 자주 static와 함께 사용해서 상수를 설명하는데, 당신도 final이 어떻게 응용 성능을 개선하는지 볼 수 있습니다.final 키워드의 의미?final은 자바에서 구성원 변수, 방법, 클래스, 로컬 변수를 설명할 수 있는 보존된 키워드입니다.일단 인용 성명을final로 하면 이 인용을 바꿀 수 없습니다. 컴파일러는 코드를 검사합니다. 변수를 다시 초기화하려고 하면 컴파일러가 컴파일 오류를 보고합니다.final 변수는 무엇입니까?구성원 변수나 로컬 변수 (방법의 변수나 코드 블록의 변수를 로컬 변수라고 함) 를 모두final라고 부르는 것을 모두final 변수라고 한다.final 변수는 static 키워드와 함께 상량으로 자주 사용됩니다.다음은 final 변수의 예입니다.

public static final String LOAN = "loan" ;
LOAN = new String( "loan" ) //invalid compilation error
final 변수는 읽기 전용입니다.
final 방법은 무엇입니까?final도 방법을 설명할 수 있습니다.방법 앞에final 키워드를 덧붙이면 이 방법이 이불류로 다시 쓰면 안 된다는 것을 나타낸다.만약 하나의 방법의 기능이 충분히 완전하다고 생각한다면, 하위 클래스에서 변경할 필요가 없다면, 이 방법을final이라고 성명할 수 있습니다.final 방법은 비final 방법보다 빠르다. 왜냐하면 컴파일할 때 정적 귀속이 되어 있기 때문에 실행할 때 동적 귀속을 할 필요가 없다.다음은 final 방법의 예입니다.

class PersonalLoan{
public final String getName(){
return "personal loan" ;
}
}

class CheapPersonalLoan extends PersonalLoan{
@Override
public final String getName(){
return "cheap personal loan" ; //compilation error: overridden method is final
}
}

final 클래스는 무엇입니까?final을 사용하여 수식하는 클래스를final클래스라고 합니다.final 클래스는 일반적으로 기능이 완전해서 계승될 수 없습니다.Java에는 String, Interger 및 기타 포장 클래스와 같은final 클래스가 많습니다.다음은 final 클래스의 예입니다.

final class PersonalLoan{
}

class CheapPersonalLoan extends PersonalLoan{ //compilation error: cannot inherit from final class
}

다음은final 키워드를 사용하는 장점을 총결하였다
final 키워드가 성능을 향상시켰다.JVM과 Java 애플리케이션은 final 변수를 캐시합니다.final 변수는 다중 스레드 환경에서 안전하게 공유할 수 있으며 추가 동기화 비용이 필요하지 않습니다.final 키워드를 사용하면 JVM은 방법, 변수 및 클래스를 최적화합니다.불가변 클래스 불가변 클래스를 만들려면final 키워드를 사용하십시오.불변 클래스는 객체가 생성되면 변경할 수 없다는 것을 의미합니다.String은 불변 클래스의 대표입니다.불변류는 많은 장점이 있다. 예를 들어 그들의 대상은 읽기만 하고 다중 스레드 환경에서 안전하게 공유할 수 있으며 별도의 동기화 비용을 쓰지 않는다.관련 읽기: 왜 String이 변하지 않는지, 그리고 어떻게 변하지 않는 클래스를 쓰는지.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 변수는 상량이고 통상적인 상량명은 대문자:privatefinal int COUNT=10;집합 대상이final이라고 성명하는 것은 인용이 변경될 수 없지만 그 안에 내용을 추가하거나 삭제하거나 변경할 수 있다는 것을 가리킨다.예를 들어 private final List Loans = new Array List ().list.add(“home loan”);//validlist.add( "personal loan");//validloans = new Vector();//not valid 우리는final 변수,final 방법,final 클래스가 무엇인지 이미 알고 있습니다.필요할 때final을 사용하면 더 빠르고 더 좋은 코드를 쓸 수 있습니다.

좋은 웹페이지 즐겨찾기