[你必须知道的.NET] 第五回:深入浅出关键字---把new说透
发布时间:2020-12-15 21:12:06 所属栏目:asp.Net 来源:网络整理
导读:div style="FONT-SIZE: 10pt" 面向对象基本概念 new关键字深入浅出 对象创建的内存管理? new一个class对象和new一个struct或者enum有什么不同? new在.NET中有几个用途,除了创建对象实例,还能做什么? new运算符,可以重载吗? 范型中,new有什么作用? ne
<div style="FONT-SIZE: 10pt">
using?System;namespace?Anytao.net.My_Must_net{????class?Number????{????????public?static?int?i?=?123;????????public?void?ShowInfo()????????{????????????Console.WriteLine("base?class---");????????}????????public?virtual?void?ShowNumber()????????{????????????Console.WriteLine(i.ToString());????????}????}????class?IntNumber?:?Number????{????????new?public?static?int?i?=?456;????????public?new?virtual?void?ShowInfo()????????{????????????Console.WriteLine("Derived?class---");????????}????????public?override?void?ShowNumber()????????{????????????Console.WriteLine("Base?number?is?{0}",?Number.i.ToString());????????????Console.WriteLine("New?number?is?{0}",?i.ToString());????????????????????}????}????class?Tester????{????????public?static?void?Main(string[]?args)????????{????????????Number?num?=?new?Number();????????????num.ShowNumber();????????????IntNumber?intNum?=?new?IntNumber();????????????intNum.ShowNumber();????????????Number?number?=?new?IntNumber();????????????//究竟调用了谁?????????????number.ShowInfo();????????????//究竟调用了谁?????????????number.ShowNumber();????????}????}}
?where?T?:?new()????{????????public?T?GetItem()????????{????????????return?new?T();????????}????}
?MyGen?=?new?Genericer
using?System;namespace?Anytao.net.My_Must_net{????class?MyClass????{????????private?int?_id;????????public?MyClass(int?id)????????{????????????_id?=?id;????????}????}????struct?MyStruct????{????????private?string?_name;????????public?MyStruct(string?name)????????{????????????_name?=?name;????????}????}????class?NewReflecting????{????????public?static?void?Main(string[]?args)????????{????????????int?i;????????????int?j?=?new?int();????????????MyClass?mClass?=?new?MyClass(123);????????????MyStruct?mStruct?=?new?MyStruct("My?Struct");????????}????}}
.method?public?hidebysig?static?void?Main(string[]?args)?cil?managed{????.entrypoint????.maxstack?2????.locals?init?(????????[0]?int32?num,????????[1]?int32?num2,????????[2]?class?Anytao.net.My_Must_net._05_new.MyClass?class2,????????[3]?valuetype?Anytao.net.My_Must_net._05_new.MyStruct?struct2)????L_0000:?nop?????????//初始化j为0????L_0001:?ldc.i4.0?????L_0002:?stloc.1?????????//使用newobj指令创建新的对象,并调用构造函数以0x76(123的16进制)初始化????L_0003:?ldc.i4.s?0x7b????????L_0005:?newobj?instance?void?Anytao.net.My_Must_net._05_new.MyClass::.ctor(int32)????L_000a:?stloc.2?????//加载“My?Struct”????L_000b:?ldloca.s?struct2????L_000d:?ldstr?"My?Struct"????//调用构造函数执行初始化????L_0012:?call?instance?void?Anytao.net.My_Must_net._05_new.MyStruct::.ctor(string)????L_0017:?nop?????L_0018:?ret?}
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- Asp.Net MVC EF各版本区别
- asp.net-mvc – 在Controller或其他地方渲染部分字符串
- asp.net-web-api – 为ASP.NET Web API应用程序生成特定于版
- 在asp.net中使用eval(“”)
- 认证 – asp.net mvc 3:Page.User.IsInRole(“xy”)返回nu
- ASP.NET 3.5会话ID的大小是多少?
- asp.net-core – 如何使.NET Core类库从.NET 4.6项目引用?
- asp.net – GridView中的TemplateField标题
- ASP.NET网站Windows窗体应用程序WCF服务:客户端凭据
- asp.net-mvc-3 – asp.net mvc的telerik grid的开源替代品?
推荐文章
站长推荐
- asp.net-mvc – 使用CSVHelper将流输出到浏览器
- asp.net – HtmlGenericControl(“br”)呈现两次
- asp.net-mvc – 当ASP.NET 5(vNext)无法重定向绑
- asp.net-mvc – EF,ASP MVC依赖注入.多个并发请求
- ASP.NET Core 认证与授权[7]:动态授权
- asp.net-mvc-3 – 我怎么能用CheckBoxFor使用int
- 如何在ASP.net c#中的页面之间传递对象而不是值?
- .net – 更好地理解Orchard的’形状’概念
- asp.net-mvc – 您是否使用任何自定义ASP.NET MV
- asp.net-mvc-3 – Amazon CloudFront Cache失效策
热点阅读