問個最基礎的問題:final 在 java 中有什麼做用?

據說微信搜索《Java魚仔》會變動強哦!java

本文收錄於JavaStarter (https://github.com/OliverLiy/JavaStarter),裏面有我完整的Java系列文章,學習或面試均可以看看哦git

(一)知識點

final 在 java 中有什麼做用?github

(二)結論

final做爲Java中的關鍵字能夠用於三個地方。用於修飾類、類屬性和類方法。面試

特徵:凡是引用final關鍵字的地方皆不可修改!微信

(1)修飾類:表示該類不能被繼承;學習

(2)修飾方法:表示方法不能被重寫;code

(3)修飾變量:表示變量不能被修改。對象

(三)再多學一點

(3.1)修飾變量

final修飾變量後這個變量不能被修改,這個不能被修改的說法對於不一樣的數據類型有不一樣的含義。blog

首先對於8個基本數據類型,當使用final修飾時,初始化後這個值是不會變的。繼承

在這裏插入圖片描述

若是使用final修飾引用類型數據時,表示該引用初始化後永遠指向一個地址,而這個地址裏的對象是能夠修改的。

final User user=new User("javayz",23);
user.setAge(18);

在上面一段代碼中,用final修飾了自定義的User對象,但user對象依舊能夠被修改。

(3.2)修飾方法

final修飾方法的做用是讓方法沒法被重寫,這裏沒有太多額外的內容

(3.3)修飾類

當使用final修飾類的時候代表這個類不能被繼承,被修飾的類全部成員方法都會被隱式地修飾爲final方法。

相關文章
相關標籤/搜索