覆盖C#中内部属性的继承
作者:互联网
在尝试序列化我的类和子类时,在与一堆未捕获的异常进行摔跤之后,我终于明白了我的问题:当应用于基类时,[Serializable]不会被子类继承.我对C#属性一般都很模糊,但我确实理解在创建自定义属性时,程序员能够自动继承属性.
有没有办法覆盖[Serializable]的继承?有没有什么好的理由说明为什么从一开始就没有这样做和/或首先做一个坏主意?我希望所有基类的所有子类都是可序列化的,所以只需要将属性添加到我创建的任何新子类中似乎是不优雅的.
谢谢!
解决方法:
绝对有一个很好的理由它首先没有完成 – 只是因为基类是可序列化的并不意味着派生类自然而然.
哎呀,对象是可序列化的 – 如果继承了可序列化,那就意味着.NET中的每个类都是可序列化的:)
你不能“覆盖”那个 – 你必须在每个类上指定它.我认为这是一件好事,实际上 – 当你添加属性时,你应该对类进行心理检查,并检查它是否真的有意义序列化它.
标签:c,oop,attributes,class-attributes 来源: https://codeday.me/bug/20190621/1257720.html