.Net中的静态类和非静态类、静态成员和非静态成员

正如标题,这样的资料网上很多,也说的很到位,但是都感觉解释的很多,理论性过强,在这里我简单的总结和概括下他们之间的区别,可以一目了然:

一.静态类和非静态类

Definition:

      静态类可以视为类库中都是单一的过程,不存在“状态”的概念;

      非静态类是存储有状态的一类操作过程

Summary:

      非静态类可以包含静态方法;

      静态类只能包含静态方法(不允许有非静态方法的存在)

 

二.静态方法和非静态方法(实例方法)

Priority in Memory When Class Loaded:

      类在加载时先加载:静态变量 -->静态方法 -->非静态成员/变量(是在类实例化之后)

Access Different:

      在C#中,非静态方法可以访问静态成员和非静态成员,但是静态方法只能访问静态成员

(静态成员是一种大家共享的资源,而静态方法并不属于某个实例,故无法调用非静态成员(实例成员))

posted @ 2014-12-20 10:59  Gavin.King  阅读(1385)  评论(0编辑  收藏  举报