📅  最后修改于: 2023-12-03 15:08:16.910000             🧑  作者: Mango
在 C# 中,我们可以使用访问修饰符来控制对象的可见性。常用的访问修饰符有 public
、 private
、 protected
和 internal
。其中, public
表示对象可以被所有类和方法访问, private
表示对象只能被当前类的成员访问, protected
表示对象只能被当前类及其子类的成员访问, internal
表示对象只在当前程序集内可见。
如果我们想要将对象设为不可见,可以考虑使用以下方法:
private
访问修饰符将对象的访问修饰符改为 private
,即可将对象设为不可见。这样,只有当前类的成员才能访问该对象。例如:
class MyClass
{
private int myNumber;
public void MyMethod()
{
myNumber = 10; // 只能在当前类的成员方法中访问myNumber
}
}
将对象封装在类中,并将类的访问修饰符设为 private
,即可将对象设为不可见。这样,只有该类的成员才能访问该对象。例如:
class MyClass
{
private MyObject myObject = new MyObject();
private class MyObject
{
public int MyNumber { get; set; }
}
public void MyMethod()
{
myObject.MyNumber = 10; // 只能在当前类的成员方法中访问myObject
}
}
internal
访问修饰符将对象的访问修饰符改为 internal
,即可将对象限定在当前程序集内可见。这样,只有当前程序集内的类和方法才能访问该对象。例如:
class MyClass
{
internal int myNumber;
public void MyMethod()
{
myNumber = 10; // 只能在当前程序集内的类和方法中访问myNumber
}
}
总结:以上是三种不同的方法来使对象不可见,通过合理使用访问修饰符、类的封装、以及程序集的限制,可以有效地保护对象的安全性。