1.面向对象的七大原则:
开闭原则:对扩展开放,对修改关闭
里氏替换原则:继承必须确保超类所拥有的性质在子类中仍然成立
依赖倒置原则:要面向接口编程,不要面向实现编程
单一职责原则:控制类的粒度大小、将对象解耦、提高其内聚性
接口隔离原则:要为各个类建立它们需要的专用接口
迪米特法则:只与你的直接朋友交谈,不跟“陌生人”说话
合成复用原则:尽量先使用组合或者聚合等关联关系来实现,其次才考虑使用继承关系来实现。
2.动态代理
需要了解两个类:Proxy:代理,InvocationHandler:调用处理程序
动态代理的好处:
(1)可以使真实角色的操作更加纯粹!不用去关注一些公共的业务
(2)公共也就就交给代理角色!实现了业务的分工!
(3)公共业务发生扩展的时候,方便集中管理!
(4)一个动态代理类代理的是一个接口,一般就是对应的一类业务。
(5)一个动态代理类可以代理多个类,只要是实现了同一个接口即可!