当前位置: 首页 > news >正文

网站改版怎么办asp 企业网站

网站改版怎么办,asp 企业网站,什么网站做推广效果好,高平网站建设C# 13 即 .NET 9 按照计划会在2024年11月发布#xff0c;目前一些新特性已经定型#xff0c;让我们来预览一个比较大型比较重要的新特性。 正文 扩展类型 Extension types 在5月份的微软 Build 大会中的 What’s new in C# 13 会议上#xff0c;两位大佬花了很长的篇幅来…C# 13 即 .NET 9 按照计划会在2024年11月发布目前一些新特性已经定型让我们来预览一个比较大型比较重要的新特性。 正文 扩展类型 Extension types 在5月份的微软 Build 大会中的 What’s new in C# 13 会议上两位大佬花了很长的篇幅来演示这个特性。 这个特性一直是大家很关心的在 github 的 issue 上讨论的也是如火如荼当然微软也隔了好多年。 首先让我们来回顾一下 C# 中的扩展方法 using System;var zhangsan  new Person(); Console.WriteLine(zhangsan.GetAge());public class Person {public string Name { get; set; } public DateTime Birthday { get; set; } }public static class PersonExtension {public static int GetAge(this Person person)  DateTime.Now.Year - person.Birthday.Year; } 以上代码演示了一个扩展方法声明方式及使用方法。 我们在不侵入 Person 类的基础上为 Person 类扩展了一个 GetAge() 的方法虽然已经可以很方便的扩展出一些方法来但是问题也是显而易见的例如必须声明在静态类中、语法看起来很怪异、只能扩展方法而不能扩展属性等等。 于是在即将到来的 C# 13 中我们可以这样 var zhangsan  new Person(); Console.WriteLine(zhangsan.GetAge());public implicit extension PersonExtension for Person {public int GetAge()  DateTime.Now.Year - this.Birthday.Year; } 怎么样语义是不是清晰了很多 进一步的年龄应该是一个属性而不应该是一个方法 var zhangsan  new Person(); Console.WriteLine(zhangsan.Age);public implicit extension PersonExtension for Person {public int Age  DateTime.Now.Year - this.Birthday.Year; } 困扰多年的如何扩展属性的问题终于得到了解决。 implicit extension / explicit extension 在上一个例子不知道大家有没有注意到关键字是 implicit extension那么很显然会有一个对应的 explicit extension下面让我们来看看花活 var zhangsan  new Person(); if(zhangsan.IsStudent) {Student zhangsanAsStudent  zhangsan;Console.WriteLine(zhangsanAsStudent.Grade); }public implicit extension PersonExtension for Person {public int Age  DateTime.Now.Year - this.Birthday.Year;public bool IsStudent  this.Age  18; }public explicit extension Student for Person {public string Grade  五年级; } 可以看到这里有一个显示扩展显式扩展可以创建原始类的投影或子类。当你要基于扩展类型添加条件方法或属性时这可能很有用。 当然扩展静态方法也是没问题的 var zhangsan  Person.Create();public implicit extension PersonExtension for Person {public static Person Create()  new Person(); } 当然系统类型也是支持的 Console.WriteLine(World.SayHello());public implicit extension StringExtension for string {public string SayHello()  Hello  this; } 总结 我想这个特性是很大的一个改变或许可以改进 C# 代码的组织方式有望提高代码的可读性、可维护性和表现力。 通过允许开发人员在不修改原始代码的情况下向现有类添加功能它可以促进代码重用并减少修改原始类的需要。 另外据了解这个特性以及相关特性例如扩展接口等等并不会在 C# 13 (.NET 9) 中完整的放出来而是会在后续版本中逐渐解锁。
http://www.hkea.cn/news/14405295/

相关文章:

  • 做移动网站优化首页软域名com和cn的区别
  • flash cms网站源码如何用wordpress 做购物车
  • 响应式网站免费模板下载乐清seo
  • 商城网站后续费用企业开通网站的费用怎么做分录
  • 淄博周村学校网站建设定制冲浪网站优化网
  • 网站开发 资质google翻译
  • 做网站给不给源代码老闵行是指哪里
  • 网站建设要花多少钱毕业设计代做的网站
  • 网站开发总结简写wordpress菜谱主题
  • 贞丰县住房和城乡建设局网站建设工程合同包括
  • 友点企业网站管理系统忘记密码像芥末堆做内容的网站
  • 织梦自动生成手机网站门户网站建设技术要求
  • 学php网站开发多钱wordpress自动分类插件
  • 离职模板网重庆高端seo
  • WordPress的站内地图中文网站建设
  • 做棋牌网站建设哪家便宜安装网站模版视频
  • 做网站需要花费那方面的钱沭阳网站建设多少钱
  • 招聘网站入职分析表怎么做在中国如何推广外贸平台
  • 山东住房城乡建设部网站电商运营怎么做如何从零开始
  • 蒙城做网站制作网页用什么语言
  • 如何建设学校门户网站设计素材网站哪个好
  • 泰州企业做网站温州网站开发服务商
  • 做代理的网站如何做搞笑的视频视频网站
  • 如何在手机上搭建网站网站建设小组五类成员
  • 正规的网站建设工作室免费网站建设服务
  • 多品牌网站建设wordpress增加知识共享协议
  • 网站运营与管理实验报告设计方案构思和设计过程
  • 物流营销型网站案例平面设计需要用到的软件
  • 西安市城乡建设厅网站动画素材库免费下载
  • dw做网站的导航栏怎么做搭建网站 开源软件