网站大量收购闲置独家精品文档,联系QQ:2885784924

CH04物件导向开发方法的效益.ppt

  1. 1、本文档共92页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
CH04物件导向开发方法的效益.ppt

* * * * * * * * * * * * * * * * * * * * * * * * Ch04/Ch04_04.java, Ch04_04_01.java * * * * * * * * * * * * * * * * * * * Ch05_05.java * Ch05_06.java * * * Ch05_07.java * * * * * * * 實線為繼承(extends),虛線為實作介面(implements) * 請先練習一下功力 * class Ch06_02 { public static void main(String [] args) { CCF a = new CCF(); a.m1(); a.m3(); a.m4(); a.m5(); } } abstract class CCE { String name = CCE; abstract void m1(); void m2() { System.out.println(我在CCE的m2啦!); } } interface IIA { String name = IIA; void m3(); void m5(); } interface IIB { String name = IIB; void m3(); } interface IIC extends IIA, IIB { String name = IIC; void m3(); } interface IID { String name = IID; void m4(); } class CCF extends CCE implements IIC, IID { String name = CCF; void m1() { System.out.println(我在CCF的m1!); m2(); } public void m3() { System.out.println(我在CCF的m3!); } public void m4() { System.out.println(我在CCF的m4!); } public void m5() { System.out.println(我在CCF的m5!); } }請先練習一下功力 * 介面和抽象類別的相似之處: 不能直接使用介面或抽象類別建立物件 介面與抽象類別都可以宣告抽象方法。 * 介面(Interface)是在類別繼承架構中定義類別行為,內含常數和方法宣告,但是並沒有實作程式碼,它和抽象類別的差異,如下所示: 抽象類別的方法可能只有宣告,但是仍然可以擁有一般方法,介面的方法都只有宣告,而且一定沒有實作的程式碼。 介面不屬於類別的繼承架構,就算亳無關係的類別也一樣可以實作同一個介面。 類別只能繼承一個抽象類別,但是可以同時實作多個介面。 * 介面和抽象類別的相異之處: 介面內的方法皆為 public 和 abstract 方法。抽象類別的抽象方法存取修飾字不限為 public。 介面內的屬性皆預設為public、static及final宣告,必須指定其值。抽象類別中的屬性則沒有限定 介面之間可以有多重繼承。抽象類別和其它類別之間只能有單一繼承 介面的目的是制訂整組訊息接收器的規格,模擬類別的多重繼承。抽象類別的目的則是制訂部份物件的規格,並制訂部份訊息接收器的規格,為多型做準備 * 請設計兩種類別: 珍珠奶茶 奶茶珍珠 兩個物件分屬這兩類別 * * * * * * * * * * Ch04/car.java * Ch04/Ch04_01.java * * * * * * Ch04/Ch04_02.java * * Ch04/Ex04_01.java * * * * Ch04/Ch04_03.java * * * 不論參照的型別為何,呼叫方法時,呼叫必威体育精装版的覆蓋方法。 多型指的是「使用相同的訊息呼叫,可以進行不同的功能操作」。 動態結合(dynamic binding):當某個物件方法,接收傳入的A類別之物件時,該方法無法得知傳入的是A類別的物件,或A之延伸類別的物件,直到執行時才會知道,也才能知道要呼叫的是哪個方法。 * 多載: class 液體_05 { String drink; 液體_05(String drink_name) { drink = drink_name; } } class 固體_05 { String food; 固體_05

文档评论(0)

wendang_12 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档