Java/COM集成[Java编程]
本文“Java/COM集成[Java编程]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:
COM(从前称为OLE)代表微软公司的“组件对象模子”(Component Object Model),它是全部ActiveX技术(包含ActiveX控件、Automation以及ActiveX文档)的底子.但COM还包含了更多的东西.它是一种特别的标准,按照它开辟出来的组件对象可通过操作系统的专门特点实现“彼此操作”.在实际利用中,为Win32系统开辟的全部新软件都与COM有着一定的关系——操作系统通过COM对象揭暴露自己的一些特点.由其他厂商开辟的组件也可以成立在COM的底子上,我们能成立和注册自己的COM组件.通过这样或那样的情势,假如我们想编写Win32代码,那么必须和COM打交道.在这里,我们将仅仅重述COM编程的基本概念,并且假定读者已掌握了COM服务器(能为COM客户供应服务的任何COM对象)以及COM客户(能从COM服务器那边申请服务的一个COM对象)的概念.本节将尽大概地使论述变得简单.工具实际的功效要强盛得多,并且我们可通过更高级的途径来利用它们.但这也要求对COM有着更深化的熟习,那已经超越了本附录的范围.假如您对这个功效强盛、但与差别平台有关的特点感爱好,应当研究COM和微软公司的文档资料,细心阅读有关Java/COM集成的那部份内容.假如想得到更多的资料,向您举荐Dale Rogerson编著的《Inside COM》,该书由Microsoft Press于1997年出版.
由于COM是全部新型Win32利用程序的构造核心,所以通过Java代码利用(或揭露)COM服务的本领就显得尤为重要.Java/COM集成无疑是Microsoft Java编译器以及虚拟机最风趣的特点.Java和COM在它们的模子上是如此类似,所以这个集成在概念上是相当直观的,并且在技术上也能轻松实现无缝结合——为拜候COM,几近不需求编写任何特别的代码.大大都技术细节都是由编译器和/或虚拟机掌握的.终究的后果就是Java程序员可象对待原始Java对象那样对待COM对象.并且COM客户可象利用其他COM服务器那样利用由Java实现的COM服务器.在这里提醒大家,固然我利用的是通用术语“COM”,但按照扩大,完好可用Java实现一个ActiveX Automation服务器,亦可在Java程序中利用一个ActiveX控件.
Java和COM最惹人注目的类似之处就是COM接口与Java的“interface”关键字的关系.这是接近完善的一种符合,因为:
■COM对象揭暴露了接口(也只有接口)
■COM接口本身并不具有实施筹划;要由揭暴露接口的那个COM对象负责它的实施
■COM接口是对语义上相关的一组函数的阐明;不会揭暴露任何数据
■COM类将COM接口组合到了一同.Java类可实现肆意数目的Java接口.
■COM有一个引用对象模子;程序员永久不大概“拥有”一个对象,只能得到对对象一个或多个接口的引用.Java也有一个引用对象模子——对一个对象的引用可“造型”成对它的某个接口的引用.
■COM对象在内存里的“生存时间”取决于利用对象的客户数目;若这个数目变成零,对象就会将自己从内存中删去.在Java中,一个对象的生存时间也由客户的数目决意.若不再有对那个对象的引用,对象就会等候垃圾汇集器的处理.
Java与COM之间这种精密的对应关系不但使Java程序员可以便利地拜候COM特点,也使Java成为编写COM代码的一种有效语言.COM是与语言无关的,但COM开辟事实上采取的语言是C++和Visual Basic.同Java相比,C++在举行COM开辟时显得愈加强盛,并可生成更有效的代码,只是它很难利用.Visual Basic比Java简单得多,但它距离底子操作系统太远了,并且它的对象模子并未实现与COM很好的对应(映射)关系.Java是二者之间一种很好的折衷筹划.
接下来,让我们对COM开辟的一些关键问题举行谈论.编写Java/COM客户和服务器时,这些问题是首先需求弄清楚的.
以上是“Java/COM集成[Java编程]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:
本文地址: | 与您的QQ/BBS好友分享! |
- ·上一篇文章:COM底子
- ·下一篇文章:<b>CORBA学习总结</b>
- ·中查找“Java/COM集成”更多相关内容
- ·中查找“Java/COM集成”更多相关内容