静态类只用于包含静态成员的类型,它既不能实例化,静态类的特性是防止继承,防止外部来NEW。它相当于一个sealed abstract类。
static class MyUtility
{
public const int data;
public static void Foo()
{
...
}
}
静态类的几个注意点
静态类不能有实例构造器。
静态类不能有任何实例成员。
静态类不能使用abstract或sealed修饰符。
静态类默认继承自System.Object根类,不能显式指定任何其他基类。
静态类不能指定任何接口实现。
静态类的成员不能有protected或protected internal访问保护修饰符。
static class Test
{
public static void Print() //静态类中的函数也要是static才行,因为试过没static是不行的.
{
System.Console.WriteLine("this is your world.");
}
}
class Test2
{
static void Main()
{
Test.Print(); //直接调用.
}
}
静态类和类成员用于创建无需创建类的实例就能够访问的数据和函数。静态类成员可用于分离独立于任何对象标识的数据和行为:无论对象发生什么更改,这些数据和函数都不会随之变化。当类中没有依赖对象标识的数据或行为时,就可以使用静态类。
类可以声明为static的,以指示它仅包含静态成员。不能使用 new 关键字创建静态类的实例。静态类在加载包含该类的程序或命名空间时由 .NET Framework 公共语言运行库 (CLR) 自动加载。
使用静态类来包含不与特定对象关联的方法。例如,创建一组不操作实例数据并且不与代码中的特定对象关联的方法是很常见的要求。您应该使用静态类来包含那些方法。
静态类的主要功能如下:
-
它们仅包含静态成员。
-
它们不能被实例化。
-
它们是密封的。
-
它们不能包含实例构造函数,因此创建静态类与创建仅包含静态成员和私有构造函数的类大致一样。私有构造函数阻止类被实例化。
使用静态类的优点在于,编译器能够执行检查以确保不致偶然地添加实例成员。编译器将保证不会创建此类的实利。
静态类是密封的,因此不可被继承。静态类不能包含构造函数,但仍可声明静态构造函数以分配初始值或设置某个静态状态。
正因为Main是静态的,所以才不用实例化,不然操作系统怎么开始执行你的程序(难道叫操作系统先实例化,再执行?),于是它才有入口函数这么个叫法.
462

被折叠的 条评论
为什么被折叠?



