回覆列表
  • 1 # 小飛飛的小朋友

    這與方法過載沒關係。他們的區別就在於一個是介面的隱式實現,一個是顯示實現。

    publicinterfaceiroom

    {

    intaddroom();

    }

    publicclassroom:iroom

    {

    publicintaddroom()

    {

    thrownewexception("themethodoroperationisnotimplemented.");

    }

    intiroom.addroom()

    {

    thrownewexception("themethodoroperationisnotimplemented.");

    }

    }

    正常情況下,如果你這樣呼叫room:

    roomroom=newroom();

    room.addroom();

    那麼執行的是addroom方法,這成為隱式實現。

    如果這樣呼叫room:

    roomroom=newroom();

    ((iroom)room).addroom();

    那麼執行的是iroom.addroom()方法。這稱之為顯示實現。

  • 中秋節和大豐收的關聯?
  • LOL“女棋王”歸來,MISS擊敗神超位列主播賽前3,紅蓮也甘拜下風,如何點評?