![]() |
1
1
要回答您的问题: 不 ,无法实现您想要的行为类型-只要t是引用类型(甚至可能是某些值类型) 你不能做太多的事。只要提供getter,调用代码就可以根据所述数据的可访问性(即属性、字段和方法)修改数据的内部内容。
注释 我的意思是你不能真正阻止它 对于你无法控制的类 . 在这个例子中,正如其他人所说,您可以将myval的set设为私有或省略它;但是由于sortedcolleciton是一个泛型类, 你不能对别人的结构做任何事 … |
![]() |
2
1
您可以有一个只读属性(即只有getter的属性):
但要小心:这可能并不总是如你所期望的那样有效。考虑:
在这种情况下,不能更改类使用的列表,但仍然可以调用该列表
|
![]() |
3
1
您的属性不必具有相同的可访问性
对于可变引用类型,您有其他选项,例如返回
|
![]() |
4
0
只实现属性的getter,并通过使用添加/删除方法修改集合 |
![]() |
5
0
我现在明白你的问题了。我认为这应该有效:
ICloneable约束确保类型参数实现ICloneable接口。(如果可以接受) |
![]() |
A B · C#Excel自动调整列避免长文本时出错 6 月前 |
![]() |
Megrez7 · C#ToArray转换合并为一行,导致数组元素更改 6 月前 |
![]() |
Aycon · 在工厂方法中释放部分创建的对象的正确方法是什么? 6 月前 |
|
Sei · Avalonia/WPF将路由器传递到控制模板 7 月前 |