栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

玩转IOC和AOP

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

玩转IOC和AOP

什么是IOC(Inversion of control ):
控制反转/反转控制。它是一种思想不是一个技术实现。描述的是:Java 开发领域对象的创建以及管理的问题。
传统的开发方式 :往往是在类 A 中手动通过 new 关键字来 new 一个 B 的对象出来

使用 IoC 思想的开发方式 :不通过 new 关键字来创建对象,而是通过 IoC 容器(Spring 框架) 来帮助我们实例化对象。
我们需要哪个对象,直接从 IoC 容器里面过去即可。

从以上两种开发方式的对比来看:我们 “丧失了一个权力” (创建、管理对象的权力),从而也得到了一个好处(不用再考虑对象的创建、管理等一系列的事情)
为什么叫控制反转
控制 :指的是对象创建(实例化、管理)的权力
反转 :控制权交给外部环境(Spring 框架、IoC 容器)

总结:传统方法需要手动new关键字来创建对象,而现在是IOC容器中的Spring框架来帮助我们实例化对象

什么是AOP?
AOP:Aspect oriented programming 面向切面编程,AOP 是 OOP(面向对象编程)的一种延续。
例如:现有三个类,志豪、志豪2、李远,这三个类中都有 playComputergame(打游戏)和 listenmusic (听音乐)两个方法。
通过 OOP 思想中的继承,我们可以提取出一个 志鑫的父类,
然后将 playComputergame(打游戏)和listenmusic (听音乐)方法放入父类中,志豪、志豪2、李远通过继承志鑫类即可自动获得 playComputergame(打游戏)和 listenmusic (听音乐)方法。
这样将会少些很多重复的代码。


总结:OOP可以减少代码的重复,我们会提取一个共同抽象方法的父类,子类继承即可,但是父类方法重复就没办法了OOP无法解决,于是就有了AOP将逻辑代码和业务代码分离,
切:在不改变原有的业务逻辑的情况下,所以面向横切逻辑。
面:横切逻辑代码往往要影响的是很多个方法,每个方法如同一个点,多个点构成一个面。这里有一个面的概念。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/770215.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号