zoukankan
html css js c++ java
ASP.NET中的Static变量
今天在看到
禁止在页面中使用static变量
一文及其评论中关于对ASP.NET中static变量的探讨,觉得并没有涉及static的实质 — 什么是static。
ASP.NET和C++中的static并没有多少不同,实质上他们都是在编译期就已存在的地址空间。换句话说,在你Build成功之后,项目的DLL文件中已经存在了这个static变量(或者类)的空间,亦即在你运行时系统载入DLL后这个变量/类的所谓实例已经存在,而且是应用程序所公用,所以你才可以直接使用,
同时所有的页面用的都是同一块空间
。
普通的类你需要new一个instance才可以使用,原因就在于应用程序中间只有声明而没有定义,new的时候就在堆里划分一块空间给他的一个实例。
一个简单的实验,大家就很容易的明白他们之间的区别:新建个简单的project,添加一个类,类增加一个变量,编译,记录dll文件的大小;然后把变量变成static的(当然你的class也必须成为static的了,想想这是为什么),编译,记录dll文件大小;比较两个dll大小,是不是后面一个比前面大呢?:)
查看全文
相关阅读:
你没听过的乔布斯语录:苹果如果没这么独,可能更成功
关于Apache mod_rewrite的中文配置、使用和语法介绍(实现URL重写和防盗链功能)
与调试器共舞
libxml2.dylb 导致<libxml/tree.h> 老是找不到头文件
国家气象局提供的天气预报接口(完整Json接口)
dSYM 文件分析工具
总结
1-22
【图论】
好像要开始图论了....但搜索还剩了点....
原文地址:https://www.cnblogs.com/Samuel/p/7545.html
最新文章
面向对象(内部类定义原则)
面向对象(静态内部类)
面向对象(内部类访问规则)
面向对象(Object类-equals()))
面向对象-多态的扩展实例
面向对象(接口)
都说程序员工作只能做到35岁.......
都说程序员工作只能做到35岁.......
【无中生有】---1---技术选型
【无中生有】---1---技术选型
热门文章
Xamarin Studio开发mono的MVC5不兼容问题
谷歌服务地址
Fedora21环境Eclipse CDT配置C++11
基于GO的windows环境下net项目的持续集成demo--安装、配置
IIS的https协议绑定操作的一个报错
cassandra2.0安装与配置的几个陷阱
linux下如何使用sftp命令
Linux 下zip包的压缩与解压
discuz x3论坛搬家换虚拟主机完美使用教程 亲测可行 附操作步骤
iOS可执行文件瘦身方法
Copyright © 2011-2022 走看看