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大小,是不是后面一个比前面大呢?:)
查看全文
相关阅读:
CSS流式布局 仿京东
Flex 实现仿 携程网 手机端布局
JS 实现 微信随机发红包思路
记录gradle 使用笔记
springBoot入门
支付宝当面付扫码支付功能详解
微信验证以及登录流程
Nginx配置文件详细说明
crontab定时任务打包备份文件并删除过期文件
关于List比较好玩的操作
原文地址:https://www.cnblogs.com/Samuel/p/7545.html
最新文章
开源医学影像平台---Cornerstonejs学习笔记<4>
开源医学影像平台---Cornerstonejs学习笔记<3>
开源医学影像平台---Cornerstonejs学习笔记<2>
开源医学影像平台---Cornerstonejs学习笔记<1>
plan before start coding
如果不能进步,那就保持不动——一次团队合作,自己错误的分析
risk
be a master to use wheels
note-2019.08.28
note-2019.08.27
热门文章
note-2019.08.21
note-2019.08.20
I want to make some notes
关于我
获得WCF Client端的本地端口
小程序推翻重来的缺点
安卓环境篇入门
Fragment 系列学习一
Handler 消息基本使用
安卓 基于监听的事件处理机制
Copyright © 2011-2022 走看看