类变量C#
假设我有3个班,即:1班、2班和3班。 Class3有一个变量类变量C#,c#,.net,C#,.net,假设我有3个班,即:1班、2班和3班。 Class3有一个变量var3 有没有可能var3(来自Class3)只能由Class1访问,而不能由Class2或任何其他类访问?如果您将var3设置为Class3保护,并使Class1从Class3继承,它将起作用 编辑,当其为属性时 例如: 将Class1和Class3放在同一个组件中,并使Class3内部。然后,它将仅对同一程序集中的其他类可见。除了上述选项之外,还有另一个选项: public class Class3 { private
var3
有没有可能
var3
(来自Class3)只能由Class1访问,而不能由Class2或任何其他类访问?如果您将var3设置为Class3保护,并使Class1从Class3继承,它将起作用
编辑,当其为属性时
例如:
将
Class1
和Class3
放在同一个组件中,并使Class3
内部。然后,它将仅对同一程序集中的其他类可见。除了上述选项之外,还有另一个选项:
public class Class3
{
private int var3;
public class Class1
{
public void ShowVar3(Class3 instance)
{
Console.WriteLine(instance.var3);
}
}
}
哪个选项是正确的取决于您的上下文。我认为,无论你做什么,你几乎肯定不应该试图直接访问另一个类的变量——但所有这些都适用于成员,这更合适。@yonan2236:对,尽管同样的原则也适用。这可能是OP问题的正确答案,+1。但是也许OP应该重新考虑他们使用继承或接口的方法,而不是使用非OOP方式的“权限管理”。@Bazzz-我完全同意你的观点。OP的架构有点尴尬。
public class Class3
{
private int var3;
public class Class1
{
public void ShowVar3(Class3 instance)
{
Console.WriteLine(instance.var3);
}
}
}