1

有点菜鸟问题,但我很好奇,我找不到我的问题的答案:

我有:

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();}
}

我想将 methodA() 的使用限制为仅我的处理程序类,是否可以通过关键字或其他方式?

目的是让一切都通过处理程序。

谢谢 :)

4

2 回答 2

1

您必须嵌套HandlerProfile类中,并且可以将其设为methodA私有。

于 2012-07-20T08:33:21.753 回答
0

不可能使用标准方法。您可以使用解决方法:

  • 将类嵌套在一起,然后使用私钥。
  • 对此类类使用单独的程序集并通过 internal 关键字限制使用
于 2012-07-20T08:36:28.407 回答