---------------------- android培训、java培训、期待与您交流! ----------------------
什么是代理?
生活中在居住的附近有一家摩托罗拉手机代理销售商,摩托罗拉总部在美国,要是想买一台摩托罗拉手机,到美国总部去买和到附近的代理销售商去买,最终的目的是一样的,都是买同一种牌子同一款手机,都解决了核心问题,但是从代理商处购买却节省了美国往返的时间及机票等费用,这就是代理的好处!
在程序中,如果定义好了一个类并实现了相关功能,但是我们想在这些功能基础上多增加一些系统功能,这时使用代理的概念就相当方便。
例如:我们要在已经定义好的类方法基础上多增加一句打印功能。
class A{ //已定义好的类
public static void Method(){//实现了相关功能
System.out.println("你好");
}
}
class B{ //代理类
public void Method(){
A.Method(); //直接调用原来的功能
System.out.println("黑马!"); //并在代理类的方法中新增功能
}
}
这样,我们就在原功能上增加了一些辅助功能,这就是代理的作用!
什么是AOP?
AOP就是面思想切面编程.
在程序的运行过程中,执行方法的时候,我们可以把他看成是一条直线,然后我们想在方法的前后加上一点逻辑,而方法并不知道!
例如加上权限、日志、性能、事务等逻辑功能。
那么,如何实现这些技术呢?
使用代理技术正好可以解决这种问题,代理是实现AOP功能的核心和关键技术。
---------------------- android培训、java培训、期待与您交流! ----------------------