GenericApplicationContext implements BeanFactory{
BeanFactoryImp beanFactoryImp;
@Override
public Object getBean(String name) throws BeansException {
return getBeanFactoryImp().getBean(name);
}
}
我觉得这样写的好处是通过 GenericApplicationContext 来使用 BeanFactory 提供的 getBean()等方法时,不需要写成这样 new GenericApplicationContext().getBeanFactory().getBean(name),而直接是 new GenericApplicationContext().getBean(name)。
我现在也有个场景想要使用这种技巧,但是我不知道接口名字,也就是上面代码的 BeanFactory 该怎么命名,所以这种技巧是一个什么模式吗,我想用这种模式的名字来命名我的接口类,比如 BeanFactoryFacade ?
1
Leviathann 2022 年 10 月 17 日
delegate
|
2
kosmosr 2022 年 10 月 17 日
就是通过接口吧?
|
3
justplaymore 2022 年 10 月 17 日
proxy pattern: https://refactoring.guru/design-patterns/proxy
接口的命名一般是用来描述抽象的能力的,具体看你希望给这个接口赋予什么能力。 |
4
wolfie 2022 年 10 月 17 日
这就是普通多态,没用到设计模式。
|
5
lllllliiii 2022 年 10 月 17 日
包装 代理 组合?
|
6
dumbbell5kg OP @justplaymore 感谢,这正是我想知道的
|