我想要实现的是禁止SomeRandom类访问被保护的类。
public class CertainClass {
public void CerFunc(){
ProtectedClass.ProtectedFunction();
}
}
public class ProtectedClass {
public static void ProtectedFunction(){
Debug.Log("Protected");
}
}
public class SomeRandomClass {
public void RandFunc(){
ProtectedClass.ProtectedFunction(); // innaccessible due to protection level
}
}
为了实现这一点我应该怎么做呢?PS:最好是静态。
回答:
Rohit Vats
把CertainClass作为私有嵌套类:
补充:
如果还想有另一个CertainClass2 被保护的 ProtectedClass 成员。就把 CertainClass2也作为 CertainClass的公共嵌套类。
或者
我建议移动ProtectedClass和想要到另一个程序集里访问它的其他类,把ProtectedClass作为内部的,这样那个程序集中的所有类就可以访问这个类,在程序集之外,它对其他类来说是不可见的。