看板 C_Sharp 關於我們 聯絡資訊
I interface 介面 通常拿來做接口 以下簡單範例 如果登入流程相同 可是資料取得方式不同或是檢驗方式不同 可以採用interface 先定義interface所需要的方法or存取子 然後繼承interface的class就要去實作 實做完就可以丟入寫好的流程中讓他跑 public interface ILogin { long GetLoginID(); bool CheckSomething(long lID); } public class FBLogin : ILogin { public long GetLoginID() { return 66666;//this is fb id } public bool CheckSomething(long lID) { return true; } } public class GoogleLogin : ILogin { public long GetLoginID() { return 77777;//this is google id } public bool CheckSomething(long lID) { return true; } } public static void Main() { bool bLoginSuccess = false; if(true) { bLoginSuccess = IsLoginSuccess(new FBLogin()); } else { bLoginSuccess = IsLoginSuccess(new GoogleLogin()); } } public static bool IsLoginSuccess(ILogin aILogin) { return aILogin.CheckSomething(aILogin.GetLoginID()); } -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 1.165.122.91 ※ 文章網址: https://www.ptt.cc/bbs/C_Sharp/M.1435141142.A.788.html
nature23306: 謝大大 特別打這麼一篇 這概念是不是和MainViewModel 06/24 19:04
nature23306: 類似? 06/24 19:04
cloudsan: 不一樣,去看看繼承跟抽象化的概念 06/24 19:43
conanist: 你把它想成每部車都有油門,可是踩油門之後 06/24 22:57
conanist: 各家反應不一樣就是你實作的內容不一樣,油門=介面 06/24 22:58
andymai: 拿電腦來說就是像各家顯卡廠商實做 pci-e 介面後,只要主 06/25 09:43
andymai: 機板有支援都可以插上去用 06/25 09:43