当前位置: 首页 > 编程语言 > C#

使对象在运行时不可变分享

时间:2023-04-11 03:27:10 C#

使对象在运行时不可变我有一个来自其他人的代码库(没有可用的源代码)的类,我需要利用它,我基本上希望在实例化后任何代码试图调用此类中的公共setter时抛出异常。注意:我不想围绕类创建包装器对象来实现它。我很懒惰。无不通过反思。类型定义不能在运行时通过反射更改,因此不能用作使类型不可变的设备。但是反射可以用来破坏类型的不变性。例如,标记为只读的属性可以在构造函数运行很久之后通过反射进行设置。我发现很难相信您愿意引入反射代码来做一些可以用包装类轻松解决的事情。当您的反射代码损坏或需要修改时,现在花很少的时间可以节省很多痛苦的时间。包装类简单、易于实现、类型安全并且对其他开发人员有意义。不要让懒惰支配您的建筑选择。以上就是C#学习教程:使对象在运行时不可变的全部内容。如果对你有用,需要进一步了解C#学习教程,希望大家多多关注。侵权请点击右侧联系管理员删除。如需转载请注明出处: