• 一起谈.NET技术,.NET :静态类的理解 狼人:


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

      静态类的主要特点如下:  

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

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

      使用静态类的优点在于:

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

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

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

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

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

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

  • 相关阅读:
    源码安装extundelete以及对遇到问题的解决
    centos 连不上网
    memcache 永久数据被踢
    svn 分支
    HTML5 中已经可以用 Ajax 上传文件了,而且代码非常简单,借助 FormData 类即可发送文件数据。
    sublime安装DocBlockr注释插件
    rsync 无密码 传输
    滚动条滑到底部,加载更多
    svn 同步脚本
    蒲公英[分块]
  • 原文地址:https://www.cnblogs.com/waw/p/2162849.html
Copyright © 2020-2023  润新知