草庐IT

properties

全部标签

C# 从 get 返回一个只读变量;放;

我发誓我见过这样的一个例子,但是用谷歌搜索了一下却找不到。我有一个类,它引用了一个对象,需要有一个GET;它的方法。我的问题是我不希望任何人能够摆弄它,即我希望他们得到它的只读版本,(注意我需要能够从我的类(class)中改变它)。谢谢 最佳答案 不,没有办法做到这一点。例如,如果您返回List(而且它不是不可变的)然后调用者将能够添加条目。正常的方法是返回一个不可变的包装器,例如ReadOnlyCollection.对于其他可变类型,您可能需要在返回值之前克隆该值。请注意,仅返回不可变接口(interface)View(例如返回I

c# - 如何在字符串中自动显示类的所有属性及其值?

这个问题在这里已经有了答案:C#:Printingallpropertiesofanobject[duplicate](9个回答)关闭6年前。想象一个具有许多公共(public)属性的类。由于某种原因,不可能将此类重构为更小的子类。我想添加一个ToString重写,它返回以下内容:Property1:Valueofproperty1\nProperty2:Valueofproperty2\n...有办法吗?

c# - 如何在字符串中自动显示类的所有属性及其值?

这个问题在这里已经有了答案:C#:Printingallpropertiesofanobject[duplicate](9个回答)关闭6年前。想象一个具有许多公共(public)属性的类。由于某种原因,不可能将此类重构为更小的子类。我想添加一个ToString重写,它返回以下内容:Property1:Valueofproperty1\nProperty2:Valueofproperty2\n...有办法吗?

02-Kafka之server.properties核心配置详解

一、Broker相关配置#brokerID,集群模式下该ID必须唯一,且永恒不变。每启动一个KafkaServer加入Kafka集群,该id必须且只能+1,否则会报错id不在指定范围之内broker.id=0#kafkaServer端启动端口,如果是同一台机器启动多个KafkaServer,则需要改此端口号。注意:如果这里的localhost不写明IP(PLAINTEXT://:9092),则默认使用内网IP,例:192.168.2.61listeners=PLAINTEXT://localhost:9092#kafka的消息存储文件。最少使用原则,当一个分区放在多台服务器或者多个路径下时,哪

C# 在不创建实例的情况下获取属性值?

是否可以在不创建实例的情况下获取值(value)?我有这门课:publicclassMyClass{publicstringName{get{return"David";}}publicMyClass(){}}现在我需要在不创建MyClass实例的情况下获取值“David”。 最佳答案 真正的答案:没有。这是一个实例属性,因此您只能在实例上调用它。您应该创建一个实例,或者将属性设为静态,如其他答案中所示。有关静态成员和实例成员之间差异的更多信息,请参阅MSDN。开玩笑但仍然是正确答案:Isitpossibletogetvaluewi

C# 在不创建实例的情况下获取属性值?

是否可以在不创建实例的情况下获取值(value)?我有这门课:publicclassMyClass{publicstringName{get{return"David";}}publicMyClass(){}}现在我需要在不创建MyClass实例的情况下获取值“David”。 最佳答案 真正的答案:没有。这是一个实例属性,因此您只能在实例上调用它。您应该创建一个实例,或者将属性设为静态,如其他答案中所示。有关静态成员和实例成员之间差异的更多信息,请参阅MSDN。开玩笑但仍然是正确答案:Isitpossibletogetvaluewi

记录一次SpringBoot3+Nacos Config做配置中心时,No spring.config.import property has been defined的问题

以下为报错信息:Nospring.config.importpropertyhasbeendefined启动时,控制台已经很明确的给出了一个标准的解决方案:Addaspring.config.import=nacos:propertytoyourconfiguration.Ifconfigurationisnotrequiredaddspring.config.import=optional:nacos:instead.Todisablethischeck,setspring.cloud.nacos.config.import-check.enabled=false.经过查阅官方资料,确认从2

c# - 创建属性 setter 委托(delegate)

我已经创建了将属性lambda转换为委托(delegate)的方法:publicstaticDelegateMakeGetter(Expression>propertyLambda){varresult=Expression.Lambda(propertyLambda.Body).Compile();returnresult;}publicstaticDelegateMakeSetter(Expression>propertyLambda){varresult=Expression.Lambda(propertyLambda.Body).Compile();returnresult;}

c# - 创建属性 setter 委托(delegate)

我已经创建了将属性lambda转换为委托(delegate)的方法:publicstaticDelegateMakeGetter(Expression>propertyLambda){varresult=Expression.Lambda(propertyLambda.Body).Compile();returnresult;}publicstaticDelegateMakeSetter(Expression>propertyLambda){varresult=Expression.Lambda(propertyLambda.Body).Compile();returnresult;}

c# - C# 中的方法与属性 - 有什么区别

这个问题在这里已经有了答案:关闭13年前。PossibleDuplicate:PropertiesvsMethods您可以在方法中键入一些代码,也可以在属性中键入。例如,我有一个属性名称。当类名更改时,我想从数据库中获取一些数据并更改对象的状态。我可以添加此代码来设置我的部分属性(property)。其他解决方案是将设置部分更改为私有(private)并添加名为SetName的方法,并在此方法中添加我的代码。那么有什么区别呢?什么时候将一些代码放入getter/setter是不好的,什么时候创建自己的方法来更改我的属性和类的其他部分?