我使用 Facade 来访问包内的方法和类,但是包内的方法和类呢?我必须直接或通过外观或类似的东西访问其他类的方法?
示例:包 1(Class Foo、Class Bar、Facade FooBar)
外部类 -> FooBar --> Foo 方法
但是里面:
Foo --> Bar
或 Foo --> FooBar --> Bar
最佳答案
外观是一个单一的界面,可以轻松访问幕后发生的所有功能。这与将组件之间的内部功能从系统传回系统(并通过接口(interface)传回系统)的要求不同。
外观是控制面板,它们简化并隐藏内部组件,以便外部用户不会迷失在界面背后的复杂性中。具有内部组件的界面可以返回外部并通过界面操纵自身,这将是一个很好的艺术演示,但会是一个糟糕的外观,因为它会暴露它试图隐藏的内容。
Outside -> Facade -> Inside.
不是
Outside -> Facade -> Inside -> Facade -> Inside.
或者根据你的情况
OutSide -> FooBar -> Foo -> Bar
就可以了。
关于java - 在包内部,我必须使用外观模式(或类似的东西)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6156802/