比如Swing组件是已经被封装好了,不可能让它去实现一个Observer接口。这使有没有其他的办法。我看网上有人说用代理模式?怎样解决?
代理就是给原来的类扩展机能
1你做一个代理类,这个类和你目前的类具有相同的接口
2-然后在这个代理类中定义一个子对象就是你当前类的对象
3--然后你写出接口的方法
自己增加扩展机能,然后调用这个字对象的方法(也是该接口的)
太一般化了,针对你的问题就是
比如以JButton为例,做一个 JButtonProxy的类,它组合一个JButton对象,JButtonProxy的就是这个JButton得代理类
这个类和JButton有相同的接口或者抽象父类
然后你再给这个类增加实现的接口
凡是和Jbutton一样的方法实现的时候,都调用这个Jbutton对象的方法。
如果你想增加什么新的功能,只要在Jbutton对象的方法调用前后增加即可
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。