91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

java接口和抽象類是什么

發布時間:2020-10-27 11:23:26 來源:億速云 閱讀:149 作者:小新 欄目:編程語言

java接口和抽象類是什么?這個問題可能是我們日常學習或工作經常見到的。希望通過這個問題能讓你收獲頗深。下面是小編給大家帶來的參考內容,讓我們一起來看看吧!

接口:

(1)接口內定義的變量都是public static final類型的,無論是否顯示限定這些修飾符,且必須要被顯式初始化,否則報錯:

public interface Interface1 {
    /**
     * VARIABLE1顯式添加public static final修飾符
     * VARIABLE2隱式含有public static final修飾符
     */
    public static final String VARIABLE1="AAA";
                        String VARIABLE2="BBB";
    
    /**
     * VARIABLE3未顯式初始化,代碼變異報錯:
     * The blank final field VARIABLE3 may not have been initialized
     */
    String VARIABLE3;                    
}

(2)接口內定義的方法都是抽象方法,即不包含任何方法實現

a.如果實現接口的類是普通類(非抽象類),則要實現該接口的所有方法,否則編譯報錯;

b.如果實現接口的類是抽象類,則可以只實現該接口的部分方法,否則拋出異常;

public interface Interface2 {
    /**
     * method1方法定義顯式添加public abstract修飾符
     * method2方法隱式含有public abstract修飾符,兩個方法都是抽象方法
     */
    public abstract String method1();
                    String method2();
}
/**
 * 普通類Class1實現Interface2接口,必須實現所有接口方法
 *
 */
public class Class1 implements Interface2 {

    @Override
    public String method1() {
        // TODO Auto-generated method stub
        return null;
    }

    @Override
    public String method2() {
        // TODO Auto-generated method stub
        return null;
    }

}
/**
 * 抽象類Class2實現Interface2接口,可以只實現方法method1
 */
public abstract class Class2 implements Interface2 {

    @Override
    public String method1() {
        // TODO Auto-generated method stub
        return null;
    }

}

抽象類:

(1)抽象類也是類,跟一般類一樣可以有普通的變量、帶實現的方法,可以有構造函數,但不能被實例化,只能用來繼承

普通方法必須帶方法體,抽象方法不能帶方法體;

public abstract class AbstractClass1 {
    String variable1;//普通變量
    public static final String VARIABLE2="AAA";//定義靜態常量
    public void method1(){  }//普通方法,必須有方法體
    abstract void method2();//抽象方法,不能有方法體
    
    AbstractClass1(){//可以定義構造函數,但抽象類不能實例化,只能被繼承
        System.out.println("此為構造函數");
    }
}

接口和抽象類還有一個最大的不同,一個類可以實現多個接口,但只能繼承一個類

在實際應用中,接口是最為常用的,如果多個接口的實現有公共的部分,則可以考慮將這部分內容提取到抽象類中,然后繼承該抽象類。也就是說,抽象類提供公共方法的實現,可以快速開發且統一管理,又允許你的類完全實現自己的所有方法,不會出現緊耦合的問題。

感謝各位的閱讀!看完上述內容,你們對java接口和抽象類是什么大概了解了嗎?希望文章內容對大家有所幫助。如果想了解更多相關文章內容,歡迎關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

蓝山县| 上思县| 北京市| 永胜县| 南木林县| 湖南省| 老河口市| 盱眙县| 交口县| 甘肃省| 台江县| 宝坻区| 高青县| 库车县| 土默特右旗| 凉山| 额济纳旗| 徐汇区| 分宜县| 治多县| 平利县| 盈江县| 井研县| 忻城县| 鹰潭市| 绥化市| 石泉县| 都匀市| 泗水县| 巴青县| 兖州市| 盘山县| 都江堰市| 潮安县| 满洲里市| 蛟河市| 易门县| 东海县| 吉安市| 镇雄县| 石泉县|