有时候我总觉得一个类中的方法也是一个接口,虽然我并没有在这个类中把它定义为一个接口,比如下面的类:
using System;
using System.Data;
using System.Data.SqlClient;
using System.Data.OleDb;
using System.Data.Odbc;
using System.IO;namespace Class
{
public class DataAccess
{
public DataAccess()
{
} public static string ConnectionStrBySql
{
get
{
return "server=127.0.0.1;user id=sa;password=clsoft;database=myweb";
}
} public static DataTable GetSqlData(string sql)
{
DataSet ds = new DataSet();
SqlDataAdapter dsCommand = new SqlDataAdapter();
......
conn.Open();
......
return ds.Tables[0];
}
......
}
}
在这个类中,我并没有定义接口,但是我可以在任务项目中把它封成一个DLL使用它,我也不用关心其中的结构,我只需要这样Class.DataAccess.ConnectionStrBySql调用它来设置连接字符串或这样Class.DataAccess.GetSqlData (str_sql)执行SQL语句就行了,从某种意义上来讲,方法不也是一种接口吗?
不知道我这样理解对不对,请大家指导!
using System;
using System.Data;
using System.Data.SqlClient;
using System.Data.OleDb;
using System.Data.Odbc;
using System.IO;namespace Class
{
public class DataAccess
{
public DataAccess()
{
} public static string ConnectionStrBySql
{
get
{
return "server=127.0.0.1;user id=sa;password=clsoft;database=myweb";
}
} public static DataTable GetSqlData(string sql)
{
DataSet ds = new DataSet();
SqlDataAdapter dsCommand = new SqlDataAdapter();
......
conn.Open();
......
return ds.Tables[0];
}
......
}
}
在这个类中,我并没有定义接口,但是我可以在任务项目中把它封成一个DLL使用它,我也不用关心其中的结构,我只需要这样Class.DataAccess.ConnectionStrBySql调用它来设置连接字符串或这样Class.DataAccess.GetSqlData (str_sql)执行SQL语句就行了,从某种意义上来讲,方法不也是一种接口吗?
不知道我这样理解对不对,请大家指导!
解决方案 »
- OCIAttrGet获取不到列名称
- 怎样在程序中添加System.Configuration这个dll文件?
- 如何序列化带参数的方法?
- Sendmessage gettext的问题..
- 我要在window service服务启动后显示一个窗体界面,怎么做?
- 为什么这样连接不了Excel2003,出现“找不到可安装的ISAM"!
- 求各种特殊数列 类似(斐波那契)
- 使用VS2010调用CodeSmith 7.0自动生成Nhibernate代码,已引用CodeSmith命名空间,可系统还是报错
- 请问:如何做一个类似WINDOWS开始菜单的东西?需要用到哪个控件?
- 在C#里怎样获得当前Windows操作系统的语言种类?以及如何知道当前Windows版本?
- 请问怎么实现像QQ一样记住密码的功能
- c#做了一个数据库小程序用于货物清单打印输出,在我的机器上能用,移植到其他的机器就出现了问题,错误代码如下
接口是抽象的,对象是具体的。
接口只能被派生或继承,不能直接使用。
你的那个用法,是类的用法。
你的理解,只是从字面上理解的生活中的“接口”或者说字典上的“接口”,而不是面向对象中对于“接口”的定义和要求。
像你这样的思维,最好别看中文译著,直接用interface来把握理解可能会更好一点