本篇內容主要講解“Java抽象類和接口怎么使用”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“Java抽象類和接口怎么使用”吧!
看一下具體的例子,有一些小細節平時可能不會注意。
class A { } interface M extends N,L{//正確的,不會報錯 } interface N{ } interface L{ } interface 接口 { public final int i = 1;//變量默認都為public final修飾 final A a = null;//基本數據類型和引用都一樣 //protected void a();//報錯 //private //報錯 public abstract void a();// 方法都是public abstract修飾的。 //void b(){} 報錯,接口里的方法不能有方法體,也不能有{},只能有(); // final void b(); // 注意,抽象方法不能加final。因為final方法不能被重寫。 //但如果抽象方法不被重寫那就沒有意義了,因為他根本沒有代碼體。 } abstract class 抽象類 { public final int i = 1;//變量并沒有被pulic和final修飾,只是一般的成員變量 public final A a = null; private void A(){}//抽象類可以有具體方法 abstract void AA();//抽象方法沒有方法體 //private abstract void B();//報錯,組合非法 // 因為private修飾的方法無法被子類重寫,所以和final一樣,使抽象方法無法被實現。 } //抽象類也可以被實例化,舉例說明 abstract class B{ B() { System.out.println("b init"); } } class C extends B{ C(){ super(); System.out.println("c init"); } } public class 接口對比抽象類 { @Test public void test() { C c = new C(); //結果先實例化B,再實例化C。 //因為會調用到父類的構造方法。 } }
到此,相信大家對“Java抽象類和接口怎么使用”有了更深的了解,不妨來實際操作一番吧!這里是億速云網站,更多相關內容可以進入相關頻道進行查詢,關注我們,繼續學習!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。