假設有3個類:animal、wolf、bird
新建乙個animal類 全部在包中
package org;
class animal
public void breath()
}建乙個wolf類
package org;
import org.animal;//匯入包中的animal類
class wolf
//重新定義乙個自己的breath()方法
public void breath()
public void fly()
}再去建乙個bird類
package org;
import org.animal;//匯入包中的animal類
class bird
//重新定義乙個自己的breath()方法
public void breath()
public void fly()
}在comfun裡呼叫
package org;
import org.*;//匯入包中的所有類
public class comfun
}
5 8 2 利用組合實現復用
對於繼承而言,子類可以直接獲得父類的public方法,程式使用子類時,都可以直接訪問該子類從父類那裡繼承到的方法 而組合則是把舊類物件作為新類的成員變數組合起來,用以實現新類的功能。package chap5 7 class animal public void breath class bird ...
JS實現繼承之最常用的組合繼承
使用建構函式方法和原型鏈方法都不能很好的實現繼承,他們各有優勢,也各有劣勢,如果把他們組合在一起,是不是可以各取所長,取長補短呢?答案是可以的,這就是組合繼承 function person skin person.prototype.run function function chinese na...
golang 使用組合的方式實現繼承
火頭陀 關注 golang並非完全物件導向的程式語言,為了實現物件導向的繼承這一神奇的功能,golang允許struct間使用匿名引入的方式實現物件屬性方法的組合 package main import fmt type people struct type people2 struct func ...