C#-对象初始化器 088
2021/12/21 13:19:46
本文主要是介绍C#-对象初始化器 088,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
之前学习数组声明时,就有一种声明方式是 int[] nums=new int[] { 1, 2, 3, 4, 5 };其数组元素赋值相当于nums[0]=1;而对象初始化器与此类似,只不过对象初始化器是在实例化对象时为对象的属性进行赋值;先看如下案例
对象初始化器及案例
首先定义一个Person类,类中只有两个自动属性(便于截图),初始化器主要的是new Person();后面的大括号,在大括号中按空格键就会提示要赋值的属性名,每个属性之间使用逗号隔开,赋值时有提示该属性是什么类型的,而且被赋值后的属性名不再提示为其赋值,使用非常方便
对象初始化器与构造方法的的区别如下
相同点:都是可以对对象的属性值进行初始化赋值
不同点:
1)构造方法有强制性,方法参数必须赋值;对象初始化器没有强制性,其中属性可赋可不赋
2)对象初始化器只能对属性(公有的)进行初始化,而构造方法可以对对象任意成员(包括公有与私有还有其他的等)进行初始化工作
3)对象初始化器在创建对象的时候使用,构造方法是写在类里面的
4)构造方法.NET版本就有,对象初始化器只能在.NET3.0以上版本使用
5)使用对象初始化器对象必须有一个无参的构造方法,如果没有编译时就会报错;构造方法只要有就行不管是不是有无参数(其构造方法都必须是公有的)
这篇关于C#-对象初始化器 088的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2022-03-01沐雪多租宝商城源码从.NetCore3.1升级到.Net6的步骤
- 2024-12-06使用Microsoft.Extensions.AI在.NET中生成嵌入向量
- 2024-11-18微软研究:RAG系统的四个层次提升理解与回答能力
- 2024-11-15C#中怎么从PEM格式的证书中提取公钥?-icode9专业技术文章分享
- 2024-11-14云架构设计——如何用diagrams.net绘制专业的AWS架构图?
- 2024-05-08首个适配Visual Studio平台的国产智能编程助手CodeGeeX正式上线!C#程序员必备效率神器!
- 2024-03-30C#设计模式之十六迭代器模式(Iterator Pattern)【行为型】
- 2024-03-29c# datetime tryparse
- 2024-02-21list find index c#
- 2024-01-24convert toint32 c#