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大小,是不是后面一个比前面大呢?:)
查看全文
相关阅读:
Autofs
markdown 基本语法
Why Linux Doesn’t Need Defragmenting
How to reconfigure installed dpkg package (tzdata, locales)
weblogic性能监控
exec
在Oracle中查询表的大小
hadoop主要概念的理解和学习
ORACLE ASM中查询表空间使用情况、数据文件路径、裸设备磁盘总大小剩余大小
linux 查看内存和cpu占用比较多的进程
原文地址:https://www.cnblogs.com/Samuel/p/7545.html
最新文章
ES2020新增功能
怎样取消 JavaScript 中的异步任务?
为什么 CommonJS 会使你的程序包变大
Js中this的绑定规则
MongoDB 谨防索引seek的效率问题【华为云技术分享】
高性能Web动画和渲染原理系列(4)“Compositor-Pipeline演讲PPT”学习摘要【华为云技术分享】
AI:为你写诗,为你做不可能的事
鲲鹏性能优化十板斧(二)——CPU与内存子系统性能调优
华为鲲鹏云之我见
鲲鹏性能优化十板斧——鲲鹏处理器NUMA简介与性能调优五步法
热门文章
一站式应用平台,华为云实现自动化构建知识图谱
化鲲为鹏,我有话说 ,鲲鹏ARM架构的优势
【读一本书】《昇腾AI处理器架构与编程》--神经网络基本知识学习(1)
【Python成长之路】python 基础篇 -- global/nonlocal关键字使用
如何在 Laravel 中连接多个 MySQL 数据库
How to use external classes and PHP files in Laravel Controller?
macOS X Mount NFS Share / Set an NFS Client
virtualbox 采用 NAT 还是 BRIDGE
Linux renew ip command
How to Disable/Enable IP forwarding in Linux
Copyright © 2011-2022 走看看