C#访问修饰符:限制一些方法只有一个其他类
问题描述:
样的noobie的问题,但我很好奇,我无法找到一个回答我的问题:C#访问修饰符:限制一些方法只有一个其他类
我:
public class Profile
{
public void methodA(){}
}
public class User
{
private List<Profile> listProfiles;
public void test() { App.Handler.doA(listProfiles[0]);} //let's say we have 1 profile
}
public class Handler
{
public void doA(Profile) { profile.methodA();}
}
我想限制方法A()的使用仅限于我的处理程序类,是否可以通过关键字或其他方式?
目的是让所有事情都经过处理程序。
谢谢:)
答
你将不得不窝Handler
的Profile
类中和可以使methodA
私人。
答
不可能使用标准方法。您可以使用解决方法:
- 在一个嵌套类然后使用私钥。
- 使用单独的程序集为这样的类和通过内部关键字限制使用
+0
谢谢你,我选择了第一个解决方法 – 2012-07-20 08:46:33
完美!我今天会学到一些东西。 谢谢你leppie。 – 2012-07-20 08:45:46
我认为你的意思是你已经学到了今天的东西:) – leppie 2012-07-20 08:46:44