A. ioc是什么意思的缩写
IOC是多种义项的缩写,包括:控制反转、国际奥林匹克委员会、初始作战能力、政府间海洋学委员会、IBM智慧城市智能运行中心。
1、控制反转(Inversion of Control,缩写为IoC)
是面向对象编程中的一种设计原则,可以用来减低计算机代码之间的耦合度。其中最常见的方式叫做依赖注入(Dependency Injection,简称DI),还有一种方式叫“依赖查找”(Dependency Lookup)。
通过控制反转,对象在被创建的时候,由一个调控系统内所有对象的外界实体将其所依赖的对象的引用传递给它。也可以说,依赖被注入到对象中。
2、国际奥林匹克委员会
简称为国际奥委会,是一个国际性的、非政府的、非赢利的组织。是奥林匹克运动的领导机构,它于1981年9月17日得到瑞士联邦议会的承认,确认其为无限期存在的具有法人资格的国际机构。总部位于瑞士洛桑。由法国人皮埃尔·德·顾拜旦建立,首任主席是泽麦特里乌斯·维凯拉斯。
5、IBM智慧城市智能运行中心
IBM Intelligent Operations Center 可监视并管理城市服务。它通过集中化的智能,提供了对日常城市运营的洞察。现在,城市、政府机构和企业可以优化运营效率并改进规划。ioc是指IBM智慧城市智能运行中心(IOC)。
B. Java编程中的AOP和IOC分别是什么呢,什么时候用呢
aop叫aspect oriented program,面向切面的编程
ioc是invert of control,反转控制
在spring in action那本书里有详细阐述,简单说一下,ioc就是其实就是依赖注入,即用接口编程,在程序中不出现new关键字,而是用接口来命名引用,然后通过某种方式(多数用spring,不过Google guice也是很好的ioc框架)把接口的某个实现类的实例注入到引用里,从而实现与接口具体实现类的松耦合
aop方式就理解起来就简单了,其方式很类似j2ee中的filter,就是在程序正常的业务流中间像切面一样插入很多其他需要执行的代码,比如登陆时候在进入登录页面前写入日志,登录以后查看cookie等类似的操作,很常用的,尤其是跟数据库有关的,或者跟支付有关的程序肯定会在每一步前面插入日志,还有某些国际化项目会在每次跳转时候都转换字符集之类
C. 简述你对IoC(Inversion of Control)的理解。
一个类需要用到某个接口的方法,我们需要将类A和接口B的实现关联起来,最简单的方法是类A中创建一个对于接口B的实现C的实例,但这种方法显然两者的依赖(Dependency)太大了。而IoC的方法是只在类A中定义好用于关联接口B的实现的方法,将类A,接口B和接口B的实现C放入IoC的 容器(Container)中,通过一定的配置由容器(Container)来实现类A与接口B的实现C的关联。
D. 可以实现ioc模式的方法有哪些
di就是ioc,前者叫依赖注入 dependency injection, 后者是控制反转Inverse of Control, spring的ioc是用aop的方式进行di实现的,往大了方向,模式角度讲,aop是用动态代理模式实现的。
不过你说地也对,可以把ioc认为是在解耦,但是我觉得不能画等号,感觉上解耦有其他方式,我估计你想要的其实是解耦方式,当然它是有很多实现方式的,你了解一下Java的那些个模式就知道了,通常一个模式就对应于你想的一个方式。比如asm这个框架,(PS:asm是java字节码框架的一种,这类框架还有javassist,和一个bcel,主要是用来直接操作.class文件,动态改变类的属性及行为,我只研究过asm) 它用的解耦模式叫做访问者模式,这个方式的特点是你实现其提供的接口后,你的业务逻辑应写在需要实现的接口方法体内,它通过读字节码而找到类的属性,方法,注解等等东西会通过调你实现的该方法以参数传给你。开始我很纳闷,这种方式很费解的,一改我们的平常思维:调框架提供的某个类的方法,经过它方法的处理得出的返回值是我们需要的值,而它这个,你需要的值是通过参数传进来的,不过后来悟出来了,给你留个悬念吧。想想为什么。
当然你想要的东西应该就是模式。网上搜罗吧。应该是26种,记不清了,不过模式的旨意都大同小异:提高代码重用率;解耦
E. 有哪些不同类型的ioc方式
IoC,(Inverse of Control)控制反转,其包含两个内容:其一是控制,其二是反转。在程序中,被调用类的选择控制权从调用它的类中移除,转交给第三方裁决。这个第三方指的就是Spring的容器。IoC另解,依赖注入(Dependency Injection),调用类对被调用类的依赖关系由第三方注入,以移除调用类对被调用类的引用。
aop,面向切面编程(也叫面向方面):Aspect Oriented Programming(AOP),是目前软件开发中的一个热点,也是Spring框架中的一个重要内容。利用AOP可以对业务逻辑的各个部分进行隔离,从而使得业务逻辑各部分之间的耦合度降低,提高程序的可重用性,同时提高了开发的效率。 AOP是OOP的延续,是(Aspect Oriented Programming)的缩写,意思是面向切面(方面)编程。主要的功能是:日志记录,性能统计,安全控制,事务处理,异常处理等等。 主要的意图是:将日志记录,性能统计,安全控制,事务处理,异常处理等代码从业务逻辑代码中划分出来,通过对这些行为的分离,我们希望可以将它们独立到非指导业务逻辑的方法中,进而改 变这些行为的时候不影响业务逻辑的代码。
F. spring 中 什么是ioc
既然你问IOC 你就一定知道Spring.
Sring中所有的Bean对象管理都依赖于DI/IOC,
Spring作为一个Web级容器,它把所有的Class类都可以转换为一个Bean对象来管理,通过加载、实例这个Bean对象,将它全部交给BeanFactory来管理,在你通过applicationContext.xml来使用和对其他Bean注入的这个过程,可以理解为IOC,使用IOC可以降低项目的耦合度,实现类与类之间的无依赖性。
AOP是面向切面编程,可以在项目中指定的位置执行指定的操作,例如事务管理,可以在所有非Query的方法执行后都执行一次事务提交的操作。不需要修改代码,通过Xml配置 就可以完成这个操作。
G. 什么叫IOC(编程术语)
控制反转
其实就是对象字段或属性赋值
public class Control{
List _data = null; //这部分就是IOC控制器给你new出来赋值,具体是ArrayList还是其他的根据配置来
}
H. 简述你对Spring框架IOC和AOP的理解。
IoC就是对象的创建,依赖都由Spring及配置文件控制;AOP就是统一的给一些类似的方法加上同样的功能,比如日志,事务。
I. 什么是IOC,什么时候用IOC
ioc spring控制反转...首先为什么要用ioc,以前做项目老是创建对象,而且多个对象之间耦合对很高,维护的时候要修改某个对象,却级联的要修改其他对象.. ioc 把对象的生命周期交给spring管理,使用配置文件映射的方式生成对象..利于维护,减少耦合。 缺点:由于是映射生成对象,速度比一般要慢大概2倍. 所以使不使用是应项目而异...