hays

          海納百川
          posts - 25, comments - 48, trackbacks - 0, articles - 0
            BlogJava :: 首頁(yè) ::  :: 聯(lián)系 :: 聚合  :: 管理
          ((MyClas)ac). ** ();
          ??????這2個(gè)星期比較緊張,要做課程設(shè)計(jì),也沒(méi)多少時(shí)間來(lái)看書(shū),不過(guò)還是把接口和流這兩張勉強(qiáng)的給讀完了,了解的不深,在下面寫(xiě)點(diǎn)總結(jié)。
          ????????接口,實(shí)際上是一組相關(guān)的常量和抽象方法(應(yīng)該就是只有定義沒(méi)有實(shí)現(xiàn)的方法).JAVA中沒(méi)有多繼承,也就是說(shuō)JAVA不支持一個(gè)類繼承多個(gè)父類。接口的出現(xiàn)正好凝補(bǔ)了這一缺陷,可以通過(guò)實(shí)現(xiàn)多接口來(lái)完成多繼承的任務(wù)。
          ?????????看完這章接口,其實(shí)也就學(xué)到了一點(diǎn),就是用接口來(lái)實(shí)現(xiàn)多態(tài)!(以前沒(méi)看到過(guò),失敗!) 平常我們都是用繼承基類的方法來(lái)實(shí)現(xiàn)多態(tài),用接口來(lái)代替基類來(lái)實(shí)現(xiàn)多態(tài)有什么好處呢?接口繼承多態(tài)仍然有它獨(dú)特的用處,當(dāng)一個(gè)對(duì)象需要擁有不同的身份時(shí),接口繼承就給了你一種實(shí)現(xiàn)的方式。例如String的聲明如下:

          public?sealed?class?String?:?IComparable,?ICloneable,?IConvertible,?IEnumerable,?IComparable<string>
          ??????其次如果一個(gè)類實(shí)現(xiàn)了多個(gè)接口的話,那么為了調(diào)用在第二個(gè)接口的方法,就要用對(duì)應(yīng)的接口類型來(lái)存儲(chǔ)對(duì)象的的引用,或者進(jìn)行類型的強(qiáng)制轉(zhuǎn)換,例如:
          .
          public??MyClass?implements?RemotoControl,AbsoluteControl
          {
          }


          這里 可以將MyClass對(duì)象的引用存儲(chǔ)在兩個(gè)接口類型之一。例如:
          RemotoControl?ar?=?new?MyClass();
          可是ar只能調(diào)用屬于實(shí)現(xiàn)了RemotoControl的方法,AbsoluteControl接口中的方法沒(méi)法調(diào)用,這時(shí)可以強(qiáng)制類型轉(zhuǎn)換了:
          ((MyClass)ar).方法

          只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。


          網(wǎng)站導(dǎo)航:
           
          主站蜘蛛池模板: 祁连县| 蒲城县| 普兰县| 兴义市| 武宁县| 嘉禾县| 亚东县| 察哈| 明星| 本溪| 班玛县| 宾川县| 施甸县| 商水县| 长子县| 岳池县| 阳谷县| 延庆县| 克拉玛依市| 和静县| 胶州市| 嘉义市| 虹口区| 文昌市| 西城区| 漯河市| 荥经县| 嘉义市| 海淀区| 池州市| 凌云县| 平利县| 淳化县| 清涧县| 广宗县| 崇礼县| 高雄市| 新津县| 汝州市| 龙江县| 新源县|