积极答复者
C#中接口,抽象类,类之间的调用

问题
-
我有一个接口:
public interface InterfaceTest
{
string aa(string name);
string bb(string name);
string cc(string name);
}然后,定义了一个抽象类,来实现这个接口:
abstract class ClassTest:InterfaceTest
{
public string aa(string name)
{
return name;
}
public string bb(string name)
{
return name;
}
public string cc(string name)
{
return name;
}
}然后,我有一个类,Test继承这个抽象类,这样,我就可以不用实现接口里的所有方法,只要抽象类实现就可以了,但是,Test这个类怎么调用抽象类里面的某一个方法呢?
答案
-
我已经知道怎么做了:
例如,在上面的结构中,我在接口定义3个方法,但是,有时候我只需要实现一个,那么,我们可以定义一个抽象类来实现这个接口,如上述代码:ClassTest,但是,如果我有一个类为Test它已经继承了另外的一个抽象类,那么,这里面的三个方法也不能实现,而且,抽象类是不能被实例化的,所以,我们重新创建一个类,来继承这个抽象类(Test1),这样,我们就可以实例化Test1,从而,就可以使用接口定义的某一个方法了。
具体代码:
接口:
public interface InterfaceTest
{
string aa(string name);
string bb(string name);
string cc(string name);
}抽象类:
abstract class ClassTest:InterfaceTest
{
public string aa(string name)
{
return name;
}
public string bb(string name)
{
return name;
}
public string cc(string name)
{
return name;
}
}可以实例化的类:
class ShowTests:ClassTest
{
}程序的入口:
public void run:OtherAbstract//已经继承了其它的抽象类
{
public void showMsg()
{
ShowTests tests=new ShowTests();
//通过tests点就可以调用ClassTest里面的方法了......
}
}
- 已标记为答案 一个落魄的程序员 2011年4月11日 2:19
全部回复
-
我已经知道怎么做了:
例如,在上面的结构中,我在接口定义3个方法,但是,有时候我只需要实现一个,那么,我们可以定义一个抽象类来实现这个接口,如上述代码:ClassTest,但是,如果我有一个类为Test它已经继承了另外的一个抽象类,那么,这里面的三个方法也不能实现,而且,抽象类是不能被实例化的,所以,我们重新创建一个类,来继承这个抽象类(Test1),这样,我们就可以实例化Test1,从而,就可以使用接口定义的某一个方法了。
具体代码:
接口:
public interface InterfaceTest
{
string aa(string name);
string bb(string name);
string cc(string name);
}抽象类:
abstract class ClassTest:InterfaceTest
{
public string aa(string name)
{
return name;
}
public string bb(string name)
{
return name;
}
public string cc(string name)
{
return name;
}
}可以实例化的类:
class ShowTests:ClassTest
{
}程序的入口:
public void run:OtherAbstract//已经继承了其它的抽象类
{
public void showMsg()
{
ShowTests tests=new ShowTests();
//通过tests点就可以调用ClassTest里面的方法了......
}
}
- 已标记为答案 一个落魄的程序员 2011年4月11日 2:19
-