Posted on 2006-06-24 23:08
hays(海納百川) 閱讀(353)
評論(0) 編輯 收藏
((MyClas)ac).
**
();
??????這2個星期比較緊張,要做課程設計,也沒多少時間來看書,不過還是把接口和流這兩張勉強的給讀完了,了解的不深,在下面寫點總結。
????????接口,實際上是一組相關的常量和抽象方法(應該就是只有定義沒有實現(xiàn)的方法).JAVA中沒有多繼承,也就是說JAVA不支持一個類繼承多個父類。接口的出現(xiàn)正好凝補了這一缺陷,可以通過實現(xiàn)多接口來完成多繼承的任務。
?????????看完這章接口,其實也就學到了一點,就是用接口來實現(xiàn)多態(tài)!(以前沒看到過,失敗!) 平常我們都是用繼承基類的方法來實現(xiàn)多態(tài),用接口來代替基類來實現(xiàn)多態(tài)有什么好處呢?
接口繼承多態(tài)仍然有它獨特的用處,當一個對象需要擁有不同的身份時,接口繼承就給了你一種實現(xiàn)的方式。例如String的聲明如下:
public?sealed?class?String?:?IComparable,?ICloneable,?IConvertible,?IEnumerable,?IComparable<string>??????其次如果一個類實現(xiàn)了多個接口的話,那么為了調用在第二個接口的方法,就要用對應的接口類型來存儲對象的的引用,或者進行類型的強制轉換,例如:
.
public??MyClass?implements?RemotoControl,AbsoluteControl


{
}


這里 可以將MyClass對象的引用存儲在兩個接口類型之一。例如:
RemotoControl?ar?=?new?MyClass();可是ar只能調用屬于實現(xiàn)了RemotoControl的方法,AbsoluteControl接口中的方法沒法調用,這時可以強制類型轉換了:
((MyClass)ar).方法