概念
C#允许从一个不同的程序集内定义的基类来派生类
规则
- 基类必须被声明为public,这样才能从它所在的程序集外部访问它。
- 必须在Visual Studio工程中的References节点中添加对包含该基类的程序集的引用。可以在Solution Explorer中找到该标题。
要使引用其他程序集中的类和类型更容易,不使用它们的完全限定名称,可以在源文件的顶部放置一个using指令,并带上将要访问的类或类型所在的命名空间。
实例
第一个程序集
- 声明名称为Assembly1.cs的源文件中,并位于BaseClassNS的命名空间内部。声明为public,这样就可以从其他程序集中访问它。
- 含有一个单独的成员,一个名称为PrintNe的方法,仅打印一条简单的消息标识该类。
//源文件名为Assembly1.cs
using System;
namespace BaseClassNS
{
public class MyBaseClass{
public void PrintMe() {
Console.WriteLine("MyBaseClass");
}
}
}
第二个程序集
继承第一个程序集中的MyBaseClass
- DerivedClass的类体为空,但从MyBaseclass继承了方法PrintMe。
- Main创建了一个类型为Derivedclass的对象并调用它继承的PrintMe方法
//源文件名称为Assembly2.cs
using System;
using BaseClassBS; //包含基类声明的命名空间
namespace UsesBaseClass
{
class DerivedClass: MyBaseClass{ //其它程序集中的基类
}
class Program{
static void Main() {
DerivedClass mdc = new DerivedClass();
mdc.PrintMe();
}
}
}