AOP(8.19暂停至spring20)
来源:互联网 发布:java 压力测试工具 编辑:程序博客网 时间:2024/04/30 19:27
Aspect Oriented Promgramming(AOP)—-面试问得多
1.直接写在原来的程序上,但不灵活
2.继承(慎用继承。因为父类方法子类必须继承,而且父类方法改了子类必须改,耦合性太强)
3.组合【设计类的时候把要组合的类的对象加入到该类中作为自己的成员变量】
(组合比继承更具灵活性和稳定性,所以在设计的时候优先使用组合)
xml中使用动态代理,将所有方法运行前加入一个LogMethod方法。
组合
①:当前对象只能通过所包含的那个对象去调用其方法,所以所包含的对象的内部细节对当前对象时不可见的。
②:当前对象与包含的对象是一个低耦合关系,如果修改包含对象的类中代码不需要修改当前对象类的代码。
③:当前对象可以在运行时动态的绑定所包含的对象。可以通过set方法给所包含对象赋值。
组合的缺点:①:容易产生过多的对象。②:为了能组合多个对象,必须仔细对接口进行定义。
由此可见,组合比继承更具灵活性和稳定性,所以在设计的时候优先使用组合。只有当下列条件满足时才考虑使用继承:
子类是一种特殊的类型,而不只是父类的一个角色
子类的实例不需要变成另一个类的对象
子类扩展,而不是覆盖或者使父类的功能失效
0 0
- AOP(8.19暂停至spring20)
- 图论(暂停更新)
- 暂停
- 批处理中延迟(暂停)
- UNITY3D 实现暂停(Coroutine)
- 系统的功能(“暂停”)
- 摘抄(网络设备)暂停施工//////
- AOP(AspectJ、Spring AOP)
- 随笔 3. 回国过年了,暂停更新博客(至2月13日)
- 启动和暂停services(C#)
- Qt断点续传(暂停下载任务)
- Unity应用怎么暂停(Pause)
- 一个按钮两个功能(开始/暂停)
- Thread 暂停 继续(to be continued)
- android---多线程(启动,暂停,终止)
- android 自定义CountDownTimer计时器(支持暂停)
- LCD1602时钟(暂停、开始、修改)
- 暂停更新博客(1705-1711)须知
- zookeeper集群部署监控与选举同步流程等工作原理
- iOS事件响应者链之被忽视的手势识别器工作原理
- Linux下部署多个Tomcat
- 多校联赛第十场
- Python 学习函数
- AOP(8.19暂停至spring20)
- 运行.bat文件
- 运动目标跟踪(十七)--一些跟踪算法简述及跟踪牛人资料整理
- 1037 Keep on Truckin'
- 计划linux学习
- <select> 标签的 multiple 属性规定可同时选择多个选项。
- BZOJ1106 [POI2007]立方体大作战tet
- 介绍一个P2P点播直播开源项目,挺不错的
- [python] 类常用的内置方法