【发布时间】:2011-04-30 11:37:10
【问题描述】:
我目前的项目中有一个特殊案例。
我有:
public class A
{
// etc.
}
public class B
{
// etc.
private void HandleSomeEvent(object parameter)
{
// Etc.
}
protected void HandleSomeOtherEvent(object parameter)
{
// Etc.
}
}
我想要:
-
A能够调用私有方法B.HandleSomeEvent,但没有其他类(但B)能够做到这一点 -
A能够调用受保护的方法B.HandleSomeOtherEvent,但没有其他类(但B和B的派生类)能够做到这一点
这在 C# 中可行吗?
- 如果可能,该怎么做?
- 如果不可能,有哪些替代方案可以尽可能保护
B免受篡改,例如,同一程序集中的C类?
【问题讨论】:
标签: c# encapsulation friend