c# - 将抽象成员从受保护更改为公共是二进制重大更改吗?
问题描述
假设我有一个 C# 类:
public class Foo
{
protected abstract void Bar();
}
我想Bar
公开。这是一个二进制的重大变化吗?
我知道这是一个源头上的重大变化,因为一位消费者写道:
public class Baz : Foo
{
protected override void Bar() { ... }
}
会得到一个编译器错误:CS0507 'Baz.Bar()': cannot change access modifiers when override 'public' inherit member 'Foo.Bar()'
解决方案
推荐阅读
- vuejs3 - 如何使响应的值传递给 app.provide 方法
- java - Android AlertDialog 将按钮对齐到底部不起作用
- azure-application-insights - Log Analytics 查询忽略 ysplit
- swift - 为什么 Swift 运算符重载需要是类型方法?
- python - 应该在 Python 包的模块中还是在导入 Python 包的模块的模块中记录异常?
- docker - 如何从另一个 docker 网络访问 docker 网络(单向访问)
- azure - Get-AzureADGroup 和 Get-AzureADMSGroup 命令的结果缺少 CommonName 属性
- html - 如何创建第二个隐藏表
- c++ - c++读取文件两列
- typescript - 如何使用 Vue3 和 Vuex4 和 TypeScript 设置商店模块?