.NET :静态类的理解

简介:   静态类是一种声明为 static 类型的,且仅包含静态成员的类。不能使用 new 关键字创建静态类的实例。静态类在加载包含该类的程序或命名空间时由 .NET Framework 公共语言运行库 (CLR) 自动加载。

  静态类是一种声明为 static 类型的,且仅包含静态成员的类。不能使用 new 关键字创建静态类的实例。静态类在加载包含该类的程序或命名空间时由 .NET Framework 公共语言运行库 (CLR) 自动加载。 静态类和类成员用于创建无需创建类的实例就能够访问的数据和函数。静态类成员可用于分离独立于任何对象标识的数据和行为:无论对象发生什么更改,这些数据和函数都不会随之变化。当类中没有依赖对象标识的数据或行为时,就可以使用静态类。

  静态类的主要特点如下:  

  • 它们仅包含静态成员。 
  • 它们不能被实例化。 
  • 它们是密封的。 
  • 它们不能包含实例构造函数。

  因此创建静态类与创建仅包含静态成员和私有构造函数的类大致一样。私有构造函数阻止类被实例化。

  使用静态类的优点在于:

  • 写在栈中,安全高速稳定,而且在执行的时候,十分优先。
  • 编译器能够执行检查以确保不致偶然地添加实例成员。
  • 编译器将保证不会创建此类的实利。

  类是密封的,因此不可被继承。静态类不能包含构造函数,但仍可声明静态构造函数以分配初始值或设置某个静态状态。静态方法属于类所有,类实例化前即可使用。

  静态类和非静态类的区别:

  非静态类是储存有状态的一类操作过程,例如语言包的非静态类,声明了之后,可能获取语言的种类,语言元素和一些附加的东西。

  静态类可以视为类库里都是单一的过程,不存在“状态”的概念,就可以使用静态类。

  非静态类可以包含静态方法,但静态类不能包含非静态方法。  

目录
相关文章
一起谈.NET技术,.NET :静态类的理解
  静态类是一种声明为 static 类型的,且仅包含静态成员的类。不能使用 new 关键字创建静态类的实例。静态类在加载包含该类的程序或命名空间时由 .NET Framework 公共语言运行库 (CLR) 自动加载。
663 0
.NET :静态类的“.NET技术”理解
  静态类是一种声明为 stat上海企业网站制作ic 类型的,且仅包含静态成员的类。不能使用 new 关键字创建静态类的实例。静态类在上海企业网站设计与制作加载包含该类的程序或命名空间时由 .NET Framework 公共语言运行库 (CLR) 自动加载。
687 0
.NET :静态类的“.NET研究”理解
  静态类是一种声明为 static 类型的,且仅包含静态成员的类。不能使用 new 关键字创建静态类的实例。静态类在加载包含该类的程序或命名空间时上海徐汇企业网站制作om'>上海网站建设由 .NET Framework 公共语言运行库 (CLR) 自动加载。
654 0
|
程序员
《.NET程序员面试秘笈》----面试题6 请简述静态类和静态类成员
【考点】静态类和静态类成员的理解,static在应用中的特殊性。
1437 0
|
2月前
|
开发框架 前端开发 JavaScript
ASP.NET MVC 教程
ASP.NET 是一个使用 HTML、CSS、JavaScript 和服务器脚本创建网页和网站的开发框架。
38 7
|
2月前
|
存储 开发框架 前端开发
ASP.NET MVC 迅速集成 SignalR
ASP.NET MVC 迅速集成 SignalR
54 0
|
3月前
|
开发框架 前端开发 .NET
ASP.NET MVC WebApi 接口返回 JOSN 日期格式化 date format
ASP.NET MVC WebApi 接口返回 JOSN 日期格式化 date format
46 0
|
3月前
|
开发框架 前端开发 安全
ASP.NET MVC 如何使用 Form Authentication?
ASP.NET MVC 如何使用 Form Authentication?
|
3月前
|
开发框架 .NET
Asp.Net Core 使用X.PagedList.Mvc.Core分页 & 搜索
Asp.Net Core 使用X.PagedList.Mvc.Core分页 & 搜索
120 0