“委托”算是“多態”的一種實現方式么?
“委托”一直以來都不是很理解,就目前參考的一些書籍和項目代碼來看,我對“委托”的理解停留在:“委托”就像一個送快遞的人員,人們可以把自己想要寄的包裹交給快遞人員,送達目的地后,“委托”的任務就完成了。而目前的快遞有EMS,平郵,申通,圓通,等等,每種快遞都有各自的收費標准。一量你選擇了某種快遞,那么你就要按照它的收費標准來付費,而這個收費標准就類似於委托所帶有的參數。
可是什么時候用“委托”呢?
從項目經驗中感覺,“委托”事件多創建在自身類中,即自身類對象可以訪問,這個有可能是考慮到類的封閉性,這里我暫且把創建真實事件的類稱為A類,而另一個需要調用A類事件的類稱為B類,在B類中如果要使用A類的方法,一是創建一個A類對象后調用事件,前提是該方法屬性為public。二是將A類屬性設為public,然后將方法屬性設為public static。三是使用B類繼承A類的方法。冒似還有好些方法都可以實現,突然覺得private、public、protected屬性與繼承之間的關系混亂了,感覺方法應該還有很多的,但為什么要使用委托好像還真有點困難,主要是不能了解其它方法的使用環境,優缺點,希望高人能夠幫忙指眯迷津。