作者bantime (景)
看板C_Sharp
標題Re: [問題] 一系列的"I"開頭代表什麼意思?
時間Wed Jun 24 18:18:59 2015
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