Java基礎知識之物件導向(2)

來源:互聯網
上載者:User

標籤:物件導向

抽象類別

1.包含一個抽象方法的類為抽象類別,抽象類別要用abstract修飾,不能直接使用其執行個體化對象,可以聲明對象。
ps:什麼是抽象方法呢?就是一個只被定義,而沒有實現的方法(public abstract void fun();),就是沒有{….方法體…}的方法。
2.抽象類別是給子類繼承的,繼承抽象類別的子類必須覆寫所有抽象方法,否則該子類還是抽象類別,不能執行個體化對象。
3.抽象類別當然不能用final修飾
例:

/** * 定義抽象類別,用abstract修飾 * 至少包含一個抽象方法*/public abstract class AbstractClass {    //抽象方法,沒有方法體    public abstract void fun();}
介面

1.介面是一個特殊的類,Java中的介面是由抽象方法和全域常量組成。
例:

/* * 定義一個介面 * 由全域常量和抽象方法組成 * */public interface InterfaceDemo {    public static final String INFO = "CHNA";//全域常量    public abstract void fun();//抽象方法}

2.介面是供一個子類實現的,用implement關鍵字
例:

/* * 實現介面 InterfaceDemo * 要覆寫介面的全部抽象方法 * */public class ImplementInterfaceDemo implements InterfaceDemo {    @Override    public void fun() {}}

3.在定義介面時,內部的全域常量的修飾詞public static final 關鍵字可以省略,內部的抽象方法的修飾詞public abstract關鍵字可以省略
4.一個類若既有繼承又有實現,則先繼承,在實現。
例:

class A extends 類名稱 implements 介面名稱1,介面名稱2{}

5.一個抽象類別可以實現多個介面,但一個介面不可以繼承抽象類別,可以實現多個介面
抽象類別與介面的區別:

匿名內部類

一個對象只使用一次,可以使用匿名對象,如果一個類只使用一次則可以用匿名內部類了。

public interface A {    public void fun();}//實現A介面class B implements A {    @Override    public void fun() {        System.out.println("Hello World!");    }}class xx{    public void temp(A a){        a.fun();    }    public void fun1(){        temp(new B());    }}public class Demo{    public static void main(String[] args){        new xx().fun1();    }}

若B類只使用一次,則可以用匿名內部類實現上面的代碼:

public class X {    public void temp(A a){        a.fun();    }    public void fun1(){        temp(new A(){            @Override            public void fun() {                System.out.println("hello");            }        });    }}
異常

1.Java中對異常的處理機制:撲捉異常,拋出異常
2.異常的處理可以使程式在有錯誤時,可以繼續執行下去
3.異常的處理格式:

try{    可能出現異常的程式碼片段}catch(異常類 異常對象){    處理異常}catch(異常類 異常對象){    處理異常}....finally{    異常的出口,不管是否有異常,該段語句都會執行}

包及存取權限
1.包就是一個檔案夾,使用package關鍵字聲明包,需要在一個類檔案的第一行
2.程式中使用其他的包,可以重具體位置匯入,用import語句表示
3.包的靜態匯入,若一個類中的方法或者變數全部是靜態,則可以使用靜態匯入,規則:import static 包名
4.包的存取權限:

未完待續。。。。

Java基礎知識之物件導向(2)

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.