如何防止从特定类调用公共方法
我有一个想要向其中添加方法的现有类。但我希望该方法只能从特定类中的特定方法调用。有没有办法阻止来自其他类/方法的调用?
例如,我有一个现有的类 A
public final class A
{
//other stuff available for all classes/methods
//I want to add a method that does its job only if called from a specific method of a class, for example:
public void method()
{
//proceed if called from Class B.anotherMethod() else throw Exception
}
}
执行此操作的一种方法是获取内部,然后确认父方法?StackTrace
method()
我正在寻找的是一种更干净,更可取的解决方案,例如模式之类的解决方案。