C# 基础之Static(通俗解释)

对于这个东西在学校里只知道用Static声明的变量是类所拥有的,不用实例化,例如:

1     public class hehe
2     {
3         public static void drink()
4         {
5             //喝柠檬红茶
6         }
7     }

在有static修饰的情况下调用:

hehe.drink();

在没有static修饰的情况下调用:

hehe h=new hehe();

h.drink();

如你所见,上面的写法更方便,除了这个好处没了?当然还有,我是在做webform的时候发现一个问题

我要导入Excel到DataSet里,然后ds保存这些数据

DataSet ds=GetExcelxxxxxxxxxxxxxxxx();

然后点击按钮【列出数据】把ds循环输出,

再点击按钮【导入数据】循环ds插入数据库,但是在这个过程中发现,在点击【导入数据】的时候ds没了,报错ds未实例化。

后来知道原来点击【列出数据】按钮时,页面刷新了,所以变量都是空的,才报错未实例化,因为它就没有值了。这涉及到生命周期的问题,想了解可以去百度看看,本人菜鸟一个,所以高深的东西不了解,只能说说简单的东西了。。。。。。。

有什么办法在页面刷新的情况下还能保存值下来

第一:定义一个static修饰的变量,例如声明这个ds的时候:static DataSet ds=new DataSet();

第二:使用一个Session来保存,例如在页面刷新前赋值:Session["ds"]=ds;取值的时候再把它转换出来。

static 一直存在内存中,直到程序结束它才消失,所以页面刷新,它也一直存在。

时间: 2024-08-07 16:58:41

C# 基础之Static(通俗解释)的相关文章

KMP算法的next[]数组通俗解释

我们在一个母字符串中查找一个子字符串有很多方法.KMP是一种最常见的改进算法,它可以在匹配过程中失配的情况下,有效地多往后面跳几个字符,加快匹配速度. 当然我们可以看到这个算法针对的是子串有对称属性,如果有对称属性,那么就需要向前查找是否有可以再次匹配的内容. 在KMP算法中有个数组,叫做前缀数组,也有的叫next数组,每一个子串有一个固定的next数组,它记录着字符串匹配过程中失配情况下可以向前多跳几个字符,当然它描述的也是子串的对称程度,程度越高,值越大,当然之前可能出现再匹配的机会就更大.

数据库 三大范式 通俗解释

一.三大范式通俗解释: (1)简单归纳: 第一范式(1NF):字段不可分: 第二范式(2NF):有主键,非主键字段依赖主键: 第三范式(3NF):非主键字段不能相互依赖. (2)解释: 1NF:原子性. 字段不可再分,否则就不是关系数据库;: 2NF:唯一性 .一个表只说明一个事物: 3NF:每列都与主键有直接关系,不存在传递依赖. 二.例子说明 (1)不符合第一字段的例子 表:字段1, 字段2(字段2.1,字段2.2), 字段3 字段2可以拆分成字段2.1和字段2.2,不符合第一范式. (2)

协方差、相关系数---通俗解释

一.协方差的意义 学过概率统计的孩子都知道,统计里最基本的概念就是样本的均值,方差,或者再加个标准差.首先我们给你一个含有n个样本的集合,依次给出这些概念的公式描述,这些高中学过数学的孩子都应该知道吧,一带而过. 均值: 标准差: 方差: 很显然,均值描述的是样本集合的中间点,它告诉我们的信息是很有限的, 而标准差给我们描述的则是样本集合的各个样本点到均值的距离之平均.以这两个集合为例,[0,8,12,20]和[8,9,11,12],两个集合的均值都是10,但显然两个集合差别是很大的,计算两者的

通俗解释什么是傅立叶变换

大家一定见过下面这种声音的波形图吧. 大家也一定见过播放音乐时跳动的条形图吧,它将声音分成多个频段,可以显示每个频段的音量. 下面这种频谱图和上图也是类似,颜色亮的地方表示某个频率的音量大.亮点越高表示声音的频率越大,听起来越感觉尖锐. 波形图转换成频谱图的过程中就用到了傅立叶变换. 简单地说,傅立叶变换就是分析一段波形(比如音频.电波)由哪些频率的波形组成,以及它们的强度. 通俗解释什么是傅立叶变换,布布扣,bubuko.com

通俗解释「为什么数据库难以拓展」

"如何通俗解释「为什么数据库难以拓展」",这个问题来自 Quora,题主还补充说自己有一些数据库的基本知识,但依然不理解为什么扩展数据库如此困难.伯乐在线编译摘编了这个问答贴的两个热门回复. Paul King , Facebook 数据科学家(3.6K 赞) 要扩展数据库有四大挑战:搜索.并发性.一致性和速度. 假设你有一张清单,上面有10个人名.如果你想要查找某个人,只需要看一眼清单就行. 但如果清单上有100万个人名呢?这时,你就需要一些策略了.电话簿把人名按照字母顺序排列,这样

java web中Jdbc访问数据库步骤通俗解释(吃饭),与MVC的通俗解释(做饭)

一.Jdbc访问数据库步骤通俗解释(吃饭) 1)加载驱动 Class.forName(“com.microsoft.jdbc.sqlserver.SQLServer”); 2) 与数据库建立连接 Connection ct=DreverManager.getConnection(“jdbc:Microsoft:sqlserver://localhost:1433;DatabaseName=dbUser,”sa”,”sa”); 3) 创建statement对象 语句对象将sql语句发送到相应的数据

Fleury (弗罗莱) 算法通俗解释

Fleury (弗罗莱) 算法通俗解释 1.定义 2.举例说明 图2为连通图G,现利用Fleury算法求它的欧拉通路.(注意区分:欧拉通路.欧拉回路) 其中一种欧拉通路如下:4 5 8 7 6 8 9 1 5 3 2 4 6,其搜索路径如下图所示: 现在让我们来分析算法实现过程: 假设我们这样走:4,6,8,5,此时在5处有三种选择(3,4,1),那么哪种能走通哪种走不通呢?答案是(3,4)通,1不通.为什么呢?来看下图- 分析: 因为(5~1)之间的边是除去已走过边(E(G)-{E1(4~6)

通俗解释glLoadIdentity(),glPushMatrix(),glPopMatrix()的作用

通俗解释glLoadIdentity(),glPushMatrix(),glPopMatrix()的作用 (2012-04-02 09:17:28) 转载▼ 对于glLoadIdentity(),glPushMatrix(),glPopMatrix()的作用虽然网上有很多的帖子,而且都试图解释得很详细,但是效果总是越说越黑,模棱两可的.今天我就简单滴说几句,言简意赅,希望大家随便看看之余能把这些个问题搞清楚了.glLoadIdentity()的作用就是把矩阵堆栈中的在栈顶的那个矩阵置为单位矩阵,

小波变换(wavelet transform)的通俗解释(一)

小波变换 小波,一个神奇的波,可长可短可胖可瘦(伸缩平移),当去学习小波的时候,第一个首先要做的就是回顾傅立叶变换(又回来了,唉),因为他们都是频率变换的方法,而傅立叶变换是最入门的,也是最先了解的,通过傅立叶变换,了解缺点,改进,慢慢的就成了小波变换.主要的关键的方向是傅立叶变换.短时傅立叶变换,小波变换等,第二代小波的什么的就不说了,太多了没太多意义.当然,其中会看到很多的名词,例如,内积,基,归一化正交,投影,Hilbert空间,多分辨率,父小波,母小波,这些不同的名词也是学习小波路上的标