编程语言
首页 > 编程语言> > 覆盖C#中内部属性的继承

覆盖C#中内部属性的继承

作者:互联网

在尝试序列化我的类和子类时,在与一堆未捕获的异常进行摔跤之后,我终于明白了我的问题:当应用于基类时,[Serializable]不会被子类继承.我对C#属性一般都很模糊,但我确实理解在创建自定义属性时,程序员能够自动继承属性.

有没有办法覆盖[Serializable]的继承?有没有什么好的理由说明为什么从一开始就没有这样做和/或首先做一个坏主意?我希望所有基类的所有子类都是可序列化的,所以只需要将属性添加到我创建的任何新子类中似乎是不优雅的.

谢谢!

解决方法:

绝对有一个很好的理由它首先没有完成 – 只是因为基类是可序列化的并不意味着派生类自然而然.

哎呀,对象是可序列化的 – 如果继承了可序列化,那就意味着.NET中的每个类都是可序列化的:)

你不能“覆盖”那个 – 你必须在每个类上指定它.我认为这是一件好事,实际上 – 当你添加属性时,你应该对类进行心理检查,并检查它是否真的有意义序列化它.

标签:c,oop,attributes,class-attributes
来源: https://codeday.me/bug/20190621/1257720.html