日期:2014-05-19  浏览次数:20681 次

C# 接口
用C#写了一个接口.但我声明其对象的时候出现:   没有赋值变量的错误,(代码如下)
IDataAccess   ida;
if(ida.ExecuteNonQuery(CommandType.Text,sqltext)   >   0)

IDataAccess   是一个接口.

大家帮忙看看是怎么回事,谢谢!!!



------解决方案--------------------
ida确实为null 怎么能调用它的方法?
------解决方案--------------------
楼主还是好好看看 C:\Program Files\Microsoft Visual Studio 8\VC#\Specifications\ 下面的 C# Language Specification 1.2.doc, 搞清楚接口是怎么个用法吧
------解决方案--------------------
接口虽然有些对象的特性,但不是正在意义上的对象,只是个标准,离开了对象,他什么也不是。
------解决方案--------------------
接口并不能提供方法的实现啊,在类继承了它后才有方法体,不知道楼主为什么那样用
------解决方案--------------------
IDataAccess ida = new ......;

你不实例化它当然是null...别告诉我你不知道怎么实例化...
------解决方案--------------------
接口可以被實例化?
------解决方案--------------------
IDataAccess ida=obj as IDataAccess;
或:

IDataAccess ida=(IDataAccess)obj;

if (ida!=null)
{
if(ida.ExecuteNonQuery(CommandType.Text,sqltext) > 0)
....
}