DotNet慎用Shared方法

2016-01-29 12:40 3 1 收藏

DotNet慎用Shared方法,DotNet慎用Shared方法

【 tulaoshi.com - ASP.NET 】


我们先来看一段代码,可以直接CP下来在VB.Net下调试查看结果
Namespace Test Public Class Father Friend Shared _x As Integer = 1 Public Sub New() End Sub End Class Public Class Child Inherits Father Public Sub New() End Sub End ClassEnd NamespacePrivate Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Dim f1 As New Father Dim c1 As New Child f1._x = 1 MessageBox.Show("Father Class 's Shared Attribues X Has Been Modify to:" + f1._x.ToString()) c1._x = 123 MessageBox.Show("Child Class 's Shared Attribues Has Been Modify to:" + c1._x.ToString()) MessageBox.Show("In The End Father Class 's Shared Attribues X Has Been Modify to:" + f1._x.ToString()) End Sub
在这里,父类的Shared属性会被子类影响,因为访问同一内存空间,在MSDN库对Shared是这么解释的
Shared 构造函数初始化类型的 Shared 变量;它们在程序开始执行后先于大多数类型成员引用运行。Shared 构造函数不重载实例构造函数,而且不能进行自身重载。
与实例构造函数不同,Shared 构造函数具有隐式 Public 访问,没有任何参数,而且不能调用其他构造函数。在 Shared 构造函数中的第一个语句之前,Shared 构造函数隐式地执行由类型中声明的 Shared 变量的变量初始值设定项指定的初始化。这对应于一个在进入构造函数后立即执行的赋值序列。变量初始值设定项按它们在类型声明中出现的文本顺序执行。

运行 Shared 构造函数的确切时间基本上是由实现决定的,但需要满足以下几个条件: Shared 构造函数在创建类型的任何实例之前运行。 Shared 构造函数在引用类型的共享成员之前运行。 Shared 构造函数在加载任何从类型派生的类型之前运行。 Shared 构造函数不会在单次程序执行过程中运行一次以上。
在 Shared 变量初始值设定项中避免循环引用,因为通常不可能确定包含这些引用的类的加载顺序。

来源:http://www.tulaoshi.com/n/20160129/1487086.html

延伸阅读
标签: Web开发
在css样式表中用了中文注释,并且将/*和*/写在与中文同一行的话,可能导致注释下方的样式失效,ie6以下的浏览器包括ie6都可能出现这个问题,但经过测试ie7、firefox、opera等浏览器都能良好支持中文注释,具体原因暂时不确定,但发现了解决方法,有问题的写法是这样的:  /*主内容区域地址栏部分样式*/ 如果改为以下两种写法...
孕妇慎用隐形眼镜 吃叶酸补钙片、穿防辐射衣服、不用手机远离电脑、多保养少生病……26岁的年轻孕妇刘丽刚怀孕,在保胎方面就做足了功夫,希望给宝宝创造一个优良的成长环境。但百密一疏,令她没有想到的是,仅仅因为戴隐型眼镜却给身体带来了伤害。 双眼角膜上皮脱落 前天深夜,怀孕2个月的刘丽在丈夫的陪同下...
标签: 怀孕
据中国消费者协会对北京、深圳两城市美容祛斑产品的抽样调查检测中发现,全部样品中汞含量严重超标,其中有60%的样品汞含量超标千克以上。 汞是对人体健康有危害的一种重金属,由于汞的某些化合物具有增白美容效果,一些不法商人便将之用于祛斑美白化妆品中,以迷惑消费者,谋取暴利。但这些产品的美白祛斑效果都是暂...
医生提醒,大多驱蚊产品所含有效成分会危害人体健康 天气渐热,各种蚊虫开始“走家串户”活跃起来,大多数家庭为防止蚊叮虫咬,会在室内点蚊香或喷杀虫剂。昨日,佛山市中医院内科主任医师谭峰提醒市民,应慎重使用杀虫剂,孕妇和婴儿房最好不使用任何驱蚊产品。 个案: 用了蚊香孕妇头痛 近日,家住佛山禅城某小区13...
百合的功效与作用 百合又名菜百合、蒜脑薯、强瞿,是著名的保健食品和常用中药。民间常将百合做成糕点,广东人更喜欢用百合煲糖水,以润肺补气。百合味甘、性平,具有润肺止咳、清心安神、清热凉血、美容养颜的功效。百合为药食兼优的滋补佳品,新鲜百合食疗效果佳,四季皆可食用。 百合的食用方法 百...

经验教程

43

收藏

55
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部