LOGO OA教程 ERP教程 模切知识交流 PMS教程 CRM教程 开发文档 其他文档  
 
网站管理员

C# this关键字的3种用法

admin
2024年3月28日 22:12 本文热度 455

用法一  this代表当前类的实例对象

namespace Demo{    public class Test    {        private string scope = "全局变量";        public string getResult()        {            string scope = "局部变量";       // this代表Test的实例对象       // 所以this.scope对应的是全局变量        // scope对应的是getResult方法内的局部变量            return this.scope + "-" + scope;        }    }
   class Program    {        static void Main(string[] args)        {            try            {                Test test = new Test();                Console.WriteLine(test.getResult());            }            catch (Exception ex)            {                Console.WriteLine(ex);            }            finally            {                Console.ReadLine();            }
       }    }}

用法二  用this串联构造函数

namespace Demo{    public class Test    {        public Test()        {            Console.WriteLine("无参构造函数");        }        // this()对应无参构造方法Test()     // 先执行Test(),后执行Test(string text)        public Test(string text) : this()        {            Console.WriteLine(text);            Console.WriteLine("有参构造函数");        }    }
   class Program    {        static void Main(string[] args)        {            try            {                Test test = new Test("张三");            }            catch (Exception ex)            {                Console.WriteLine(ex);            }            finally            {                Console.ReadLine();            }        }    }}

用法三  为原始类型扩展方法

namespace Demo{    public static class Extends    {     // string类型扩展ToJson方法        public static object ToJson(this string Json)        {            return Json == null ? null : JsonConvert.DeserializeObject(Json);        }        // object类型扩展ToJson方法        public static string ToJson(this object obj)        {            var timeConverter = new IsoDateTimeConverter { DateTimeFormat = "yyyy-MM-dd HH:mm:ss" };            return JsonConvert.SerializeObject(obj, timeConverter);        }        public static string ToJson(this object obj, string datetimeformats)        {            var timeConverter = new IsoDateTimeConverter { DateTimeFormat = datetimeformats };            return JsonConvert.SerializeObject(obj, timeConverter);        }        public static T ToObject<T>(this string Json)        {            return Json == null ? default(T) : JsonConvert.DeserializeObject<T>(Json);        }        public static List<T> ToList<T>(this string Json)        {            return Json == null ? null : JsonConvert.DeserializeObject<List<T>>(Json);        }        public static DataTable ToTable(this string Json)        {            return Json == null ? null : JsonConvert.DeserializeObject<DataTable>(Json);        }        public static JObject ToJObject(this string Json)        {            return Json == null ? JObject.Parse("{}") : JObject.Parse(Json.Replace(" ", ""));        }    }
   class Program    {        static void Main(string[] args)        {            try            {                List<User> users = new List<User>{                    new User{ID="1",Code="zs",Name="张三"},                    new User{ID="2",Code="ls",Name="李四"}                };
               // list转化json字符串                string json = users.ToJson();          // string转化List                users = json.ToList<User>();
               // string转化DataTable                DataTable dt = json.ToTable();            }            catch (Exception ex)            {                Console.WriteLine(ex);            }            finally            {                Console.ReadLine();            }        }    }
   public class User    {        public string ID { get; set; }        public string Code { get; set; }        public string Name { get; set; }    }}

该文章在 2024/3/28 22:12:22 编辑过
关键字查询
相关文章
正在查询...
点晴ERP是一款针对中小制造业的专业生产管理软件系统,系统成熟度和易用性得到了国内大量中小企业的青睐。
点晴PMS码头管理系统主要针对港口码头集装箱与散货日常运作、调度、堆场、车队、财务费用、相关报表等业务管理,结合码头的业务特点,围绕调度、堆场作业而开发的。集技术的先进性、管理的有效性于一体,是物流码头及其他港口类企业的高效ERP管理信息系统。
点晴WMS仓储管理系统提供了货物产品管理,销售管理,采购管理,仓储管理,仓库管理,保质期管理,货位管理,库位管理,生产管理,WMS管理系统,标签打印,条形码,二维码管理,批号管理软件。
点晴免费OA是一款软件和通用服务都免费,不限功能、不限时间、不限用户的免费OA协同办公管理系统。
Copyright 2010-2024 ClickSun All Rights Reserved