相信接觸過C++的人都知道在C++里有一個Vitural類,它就是和Java中等價的abstract類,我們稱他們為抽象類。在C++中包含虛函數的類稱為虛基類,用Vicural關鍵字來表示。虛基類只能用于繼承,而不能創造虛基類的對象。虛函數是只有函數原型而沒有函數體的函數,它必須在繼承類中重新來定義。而在Java中是用abstract關鍵字來表示抽象類和方法。
接口,接口就是包含了一組抽象方法的抽象類。Java中不支持多重繼承,但支持多個接口。要實現接口必須用implements關鍵子。
抽象類是用來實現同一層次類之間的繼承關系,接口是用來實現不同層次類之間的繼承關系。
eg:
package MyPackage
abstract class Customer //定義Customer類
{
abstract String getName();
};
public interface Account //定義了Account接口
{
public float getBalance();
};
public interface Debit //定義Debit接口
{
public void deductAmout(float amt);
};
public interface Credit //定義Credit接口
{
public void addAmount(float amt);
};
public class CustomerAccount extends Customer implements Account Debit Credit
{
public String getName()
{
//重寫抽象類Customer的方法getName()
}
public float getBalance()
{
//重寫接口Account的方法getBalance()
}
public float deducAmount(float amt)
{
//重寫接口Debit的方法deducAmount(float amt)
}
public void addAmount(float amt)
{
//重寫接口Credit的方法addAmount(float amt)
}
};
定義了這些接口后就可以在任何類中實現這些接口了,當然這只是我最為基礎的理解,相信在以后的學習和實踐中會得到更為深刻的認識。