Re: [问题] 一系列的"I"开头代表什么意思?

楼主: bantime (景)   2015-06-24 18:18:59
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());
}
作者: nature23306 (pART)   2015-06-24 19:04:00
谢大大 特别打这么一篇 这概念是不是和MainViewModel类似?
作者: cloudsan (趴千)   2015-06-24 19:43:00
不一样,去看看继承跟抽象化的概念
作者: conanist (QQ)   2015-06-24 22:57:00
你把它想成每部车都有油门,可是踩油门之后各家反应不一样就是你实作的内容不一样,油门=接口
作者: andymai (人生只有一次)   2015-06-25 09:43:00
拿电脑来说就是像各家显卡厂商实做 pci-e 接口后,只要主机板有支援都可以插上去用

Links booklink

Contact Us: admin [ a t ] ucptt.com