interface是用来implement的,不是用来实例化的。
如果定义了一个public interface ISecurity { }那么你可以将一个类定义为该interface的实现
public class FormSecurity : ISecurity {}请注意,这时候这个类就不可以从一个父类继承了。这时候你可以实例化这个类。
public class MyClass
{
private FormSecurity mySecurity;
public MyClass
{
this.mySecurity = new FormSecurity();
}
}
如果定义了一个public interface ISecurity { }那么你可以将一个类定义为该interface的实现
public class FormSecurity : ISecurity {}请注意,这时候这个类就不可以从一个父类继承了。这时候你可以实例化这个类。
public class MyClass
{
private FormSecurity mySecurity;
public MyClass
{
this.mySecurity = new FormSecurity();
}
}
解决方案 »
- sql执行问题,vb.net转c# 的代码
- C#小问题
- 安装framework3.5打进安装包,使得安装framework3.5安装比较快
- 【急】要实现自动安装SQLSERVER 2005,安装IIS,配置IIS站点。--要用到什么技术?
- RichTextBox插入图片问题
- RadioButtonList如果改变字体大小
- DevExpress中Line点不可见
- 文字 添加 空格 补齐问题?
- 怎么运用remoting和DataSet加DataGrid控件构件三层结构的应用程序???
- 问题:DataSet中增加一列如何实现?
- 用c#写串口通信部分代码问题
- vs2005打包问题,小弟请高人指点一下!
比如 IDictionary childs = new Hashtable();
不如 Itest 接口
test:Itest 继承
实例化的时候: Itest mytest=new test();
public interface ISecurity { }
// 实现界面的类
public class FormSecurity : ISecurity {}
public class WindowsSecurity : ISecurity {}public class MyClass
{
public MyClass
{
}
public void LogIn(string Username, string Password, string AuthType)
{
if (AuthType.Equals("Form"))
{
// 这里实例化
FormSecurity fs = new FormSecurity(Username, Password)
// 直接传参
Authenticate(fs)
}
else
{
// 其他认证方式
WindowsSecurity ws = new SqlSecurity(Username, Password)
// 直接传参
Authenticate(ws);
}
}
private void Authenticate(ISecurity s)
{
}
}