java的spring框架中ClassPathXmlApplicationContext类和ApplicationContext接口

ApplicationContextact=newClassPathXmlApplicationContext("applicationContext.xml");spr... ApplicationContext act=new ClassPathXmlApplicationContext("applicationContext.xml");
spring框架中ClassPathXmlApplicationContext类型的对象怎么能赋值给ApplicationContext类型的变量?
这两个像没有什么关系啊,怎么能这么做?
展开
 我来答
jamxval
2014-10-21 · TA获得超过6823个赞
知道大有可为答主
回答量:4308
采纳率:82%
帮助的人:1439万
展开全部
这两个类之间有继承或实现接口的关系。

面向对象的程序设计中一般都是允许一个类的对象实例赋值给它的父类或父接口。对象的真实类型不是由变量前面的符号决定的,而在你 new 这个对象实例的时刻决定的。

你的例子中,new ClassPathXmlApplicationContext(...) 这句就是创建一个对象实例。并且把它赋值给 act 这个符号。act 只是个符号,它的类型 ApplicationContext 是在表示这个对象实例“至少”有什么功能。面向对象的程序设计有一个概念叫抽象,就是把复杂问题简单化,当我们想需要知道某些功能时,我们就不要去花时间了解不必要的细节。把一个实现类(拥有更多功能)赋值给它你父类或接口就是在尝试隐藏不必要的细节,告诉你,你只要知道它有这些功能就足够了,其它的与你当前的用法无关。

相信你们以前的物理课本上也讲过“物理学中,把复杂问题简单化的过程就叫抽象。比如我们把力学中的物体抽象成为质点”。
不管一个编程语言是如何设计的,它最终是由人来设计的,也就是说,它们都会留下人类对社会现象的认识痕迹,要理解一门编程语言其实也需要找到它与现实生活的关联之外,这个把现实世界中的现象用某种表达式表现出来的过程中叫“建模” Modeling。如果你没有理解这层联系就还不能说自己理解了这门编程语言。所以大师们经常被关联到“艺术”这个词汇上,在他们看来,这些是相通的。
oooo______ooo
2014-10-21
知道答主
回答量:16
采纳率:0%
帮助的人:10.4万
展开全部
ClassPathXmlApplicationContext是ApplicationContext实现类,ApplicationContext是接口,其实父子类也可以这样用,具体的你可以网上找下接口类与实现类之间的关系
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
tsngmz
2014-10-21 · TA获得超过281个赞
知道小有建树答主
回答量:429
采纳率:0%
帮助的人:286万
展开全部
你确定没关?怎么可能
class ClassPathXmlApplicationContext extends AbstractXmlApplicationContext

class AbstractApplicationContext extends DefaultResourceLoader
implements ConfigurableApplicationContext, DisposableBean

interface ConfigurableApplicationContext extends ApplicationContext
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式