close

多型(Polymorphism):

若Employee(父) / Sales(子) 有繼承關係

Employee emp = new Sales(); <<<------兩邊型別不一致但可以過

(大)                (小)

※當使用多型時,主要型別還是以[=左邊]為主

※使用Polymorphism寫法:

   當方法是non-static

      -當有造成Method Oveide時,看等號[=]的右邊

      -當沒有造成Method Override時,看等號[=]的左邊

      -當是static,一律看等號[=]左邊

何謂Method Oveide?


在物件導向:

   Promotion/Casting 只有適用於直系血親

EX:

Employee emp = new Sales;         <<<----success

Sales sales = (Sales)emp;         <<<----success

Sales s = new Secretary();        <<<----Fill

Secretary s = (Secretary)sales;   <<<----compiler success, but run:ClassCustException

arrow
arrow
    創作者介紹
    創作者 淺翔 的頭像
    淺翔

    翔の學習淺談

    淺翔 發表在 痞客邦 留言(0) 人氣()