gpt4 book ai didi

c# - protected 内部类在类内工作但不在外工作

转载 作者:行者123 更新时间:2023-12-05 02:24:31 24 4
gpt4 key购买 nike

我尝试了一些东西,想知道为什么会这样。

比如说,我在命名空间 n 中有一个名为 A 的类,我正在尝试创建 protected 内部类 B。

namespace n
{
public class A
{
public A()
{
}
}
protected internal class B //throwing error
{
}
}

但是当我这样尝试时(B 作为 A 的子类),它不会抛出错误并且它已经成功。你能解释一下为什么会这样吗?

namespace n
{
public class A
{
public A()
{
}
protected internal class B // its not throwing error
{
}
}
}

理论上我是否遗漏了什么?这有点令人困惑。

最佳答案

查看错误。

Elements defined in a namespace cannot be explicitly declared as private, protected, or protected internal

只允许内部或公共(public)成员在类之外。

您的第二种情况是将类 B 定义为类 A 的成员,这就是您没有收到错误的原因。

您可能会看到 Access Modifiers C#

Classes and structs that are declared directly within a namespace (in other words, that are not nested within other classes or structs) can be either public or internal. Internal is the default if no access modifier is specified.

关于c# - protected 内部类在类内工作但不在外工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12403647/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com