C#是个纯OOP的语言,这代表着它不允许设计人员声明全局性的函数或是变量,它提倡以静态函数与静态变量来取代原本须要使用全局性函数及变量的地方,由于静态函数与静态变量都要声明于类内,这个限制形成群集的效应,同时引出了另一种类型的运用:Static Helper Object,见程序2-7。
程序2-7 Static Helper Object范例
public sealed class DomainHelper
{
public static string GetCurrentDomainDir()
{
return AppDomain.CurrentDomain.BaseDirectory;
}
private DomainHelper()
{
}
}
............
MessageBox.Show(DomainHelper.GetCurrentDomainDir());
DomainHelper
是一个不允许继承且具备私有构造函数的类,这代表着设计人员不可能创建或是继承此类,
DomainHelper
提供了
GetCurrentDomainDir
静态函数,
用来返回目前
Application Domain
所在的路径,这比起原来调用
AppDomain. GetCurrentDomain. BaseDirectory函数来取得同样结果的方式简短了许多。Helper Object的中心概念就是将常用的辅助型函数包装成静态函数,设计人员就无须一再重复地撰写这些程序代码,组件设计技术与Helper Object息息相关,读者们会在后面的章节中看到更多这类型的例子。