Java面试题精选(持续更新)

Java基础

框架

谈谈你对Spring的理解

Spring是一个轻量级的开源的J2EE框架。它是一个容器框架,用来装javabean Ciava对象),中间层框架(万能胶)可以起一个连接作用,比如说把Struts和hibermate粘合在一起运用,可以让我们的企业开发更快、更简洁。

  • Spring是一个轻量级的控制反转 (IOC)和面向切面 (AOP)的容器框架;
  • 从大小与开销两方面而言Spring都是轻量级的。
  • 通过控制反转(IOC)的技术达到松耦合的目的
  • 提供了面向切面编程的丰富支持,允许通过分离应用的业务逻辑与系统级服务进行内聚性的开发;
  • 包含并管理应用对象(Bean)的配置和生命周期,这个意义上是一个容器。
  • 将简单的组件配置、组合成为复杂的应用,这个意义上是一个框架

谈谈你对AOP的理解

系统是由许多不同的组件所组成的,每一个组件各负责一块特定功能。除了实现自身核心功能之外,这些组件还经常承担着额外的职责。例如日志、事物管理和安全这样的核心服务经常融入到自身具有核心业务逻辑的组件中去。这些系统服务经常被称为横切关注点,因为它们会跨越系统的多个组件。

当我们需要为分散的对象引入公共行为的时候,OOP则会显得无能为力。也就是说,OOP允许你自己定义从上到下的关系,但并不适合定义从左到右的关系。例如日志功能。

日志代码往往水平地散布在所有对象层次中。而与它所散布到的对象的核心功能毫无关系。

在OOP设计中,它导致了大量代码的重复,而不利于各个模块的重用。

  • AOP:将程序中的交叉业务逻辑(比如安全,日志,事物等),封装成一个切面,然后注入到目标对象(具体业务逻辑)中去。AOP可以对某个对象或者某些对象的功能进行增强,比如对象中的方法进行增强,可以在执行某个方法之前额外的去做一些事情,在某个方法执行之后额外的做一些事情。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

壹棵白杨

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值