您好,登錄后才能下訂單哦!
本文實例講述了Java中final與繼承操作。分享給大家供大家參考,具體如下:
一 點睛
final在Java中被稱為終結器。
1 在基類的某個方法加了final,那么在子類中該方法被禁止二次“改造”。
2 通過在類的前面添加final關鍵字,便可以阻止基類被繼承。
二 實戰1——final標記的方法不能被子類覆寫實例
1 代碼
class Person { // 此方法聲明為final不能被子類覆寫 final public String talk() { return "Person:talk()" ; } } class Student extends Person { public String talk() { return "Student:talk()" ; } } public class TestFinalDemo { public static void main(String args[]) { Person S1 = new Student(); System.out.println(S1.talk()); } }
2 運行
3 說明
運行時發生了A JNI has occured錯誤,這里JNI指的是“Java Native interface(Java 本機接口)”。
三 實戰2——用final繼承的限制
1 代碼
//定義被final修飾的父類 final class SuperClass { String name; int age; } //子類SubClass繼承SuperClass class SubClass extends SuperClass { //do something } public class InheritRestrict { public static void main(String[] args) { SubClass subClass = new SubClass(); } }
2 運行
Exception in thread "main" java.lang.Error: Unresolved compilation problem:
The type SubClass cannot subclass the final class SuperClass
at SubClass.<init>(InheritRestrict.java:18)
at InheritRestrict.main(InheritRestrict.java:26)
更多java相關內容感興趣的讀者可查看本站專題:《Java面向對象程序設計入門與進階教程》、《Java數據結構與算法教程》、《Java操作DOM節點技巧總結》、《Java文件與目錄操作技巧匯總》和《Java緩存操作技巧匯總》
希望本文所述對大家java程序設計有所幫助。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。