了解下JAVA的Java/COM集成
主要缺点就是:速度比较慢,没有C和C++快COM(之前称为OLE)代表微软公司的“组件对象模子”(ComponentObjectModel),它是一切ActiveX手艺(包含ActiveX控件、Automation和ActiveX文档)的基本。但COM还包括了更多的工具。它是一种特别的标准,依照它开辟出来的组件对象可经由过程操纵体系的专门特征完成“互相操纵”。在实践使用中,为Win32体系开辟的一切新软件都与COM有着必定的干系——操纵体系经由过程COM对象展现出本人的一些特征。由其他厂商开辟的组件也能够创建在COM的基本上,我们能创立和注册本人的COM组件。经由过程如许或那样的情势,假如我们想编写Win32代码,那末必需和COM打交道。在这里,我们将仅仅重述COM编程的基础观点,并且假定读者已把握了COM服务器(能为COM客户供应服务的任何COM对象)和COM客户(能从COM服务器那边请求服务的一个COM对象)的观点。本节将尽量地使叙说变得复杂。工具实践的功效要壮大很多,并且我们可经由过程更初级的路子来利用它们。但这也请求对COM有着更深入的熟悉,那已超越了本附录的局限。假如您对这个功效壮大、但与分歧平台有关的特征感乐趣,应当研讨COM和微软公司的文档材料,细心浏览有关Java/COM集成的那部份内容。假如想取得更多的材料,向您保举DaleRogerson编著的《InsideCOM》,该书由MicrosoftPress于1997年出书。
因为COM是一切新型Win32使用程序的布局中心,以是经由过程Java代码利用(或展现)COM服务的才能就显得尤其主要。Java/COM集成无疑是MicrosoftJava编译器和假造机最风趣的特征。Java和COM在它们的模子上是云云类似,以是这个集成在观点上是相称直不雅的,并且在手艺上也能轻松完成无缝分离——为会见COM,几近不必要编写任何特别的代码。年夜多半手艺细节都是由编译器和/或假造机把持的。终极的了局即是Java程序员可象看待原始Java对象那样看待COM对象。并且COM客户可象利用其他COM服务器那样利用由Java完成的COM服务器。在这里提示人人,只管我利用的是通用术语“COM”,但依据扩大,完整可用Java完成一个ActiveXAutomation服务器,亦可在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++和VisualBasic。同Java比拟,C++在举行COM开辟时显得加倍壮大,并可天生更无效的代码,只是它很难利用。VisualBasic比Java复杂很多,但它间隔基本操纵体系太远了,并且它的对象模子并未完成与COM很好的对应(映照)干系。Java是二者之间一种很好的折中计划。
接上去,让我们对COM开辟的一些关头成绩举行会商。编写Java/COM客户和服务器时,这些成绩是起首必要弄分明的。
java也能做一些底层语言开发做的事情(难度很高,不是java顶尖高手是做不来的), 当然你也可以参加一些开源项目,一方面可以提高自己,另一方面也是为中国软件事业做贡献嘛!开发者在互联网上用CVS合作开发,用QQ,MSN,E-mail讨论联系,天南海北的程序员分散在各地却同时开发同一个软件,是不是很有意思呢? 是一种使用者不需花费很多时间学习的语言 在全球云计算和移动互联网的产业环境下,Java更具备了显著优势和广阔前景。 另外编写和运行Java程序需要JDK(包括JRE),在sun的官方网站上有下载,thinking in java第三版用的JDK版本是1.4,现在流行的版本1.5(sun称作J2SE 5.0,汗),不过听说Bruce的TIJ第四版国外已经出来了,是专门为J2SE 5.0而写的。 一直感觉JAVA很大,很杂,找不到学习方向,前两天在网上找到了这篇文章,感觉不错,给没有方向的我指了一个方向,先不管对不对,做下来再说。 另外编写和运行Java程序需要JDK(包括JRE),在sun的官方网站上有下载,thinking in java第三版用的JDK版本是1.4,现在流行的版本1.5(sun称作J2SE 5.0,汗),不过听说Bruce的TIJ第四版国外已经出来了,是专门为J2SE 5.0而写的。 你快去找一份Java的编程工作来做吧(如果是在校学生可以去做兼职啊),在实践中提高自己,那才是最快的。不过你得祈祷在公司里碰到一个高手,而且他 还愿意不厌其烦地教你,这样好象有点难哦!还有一个办法就是读开放源码的程序了。我们知道开放源码大都出自高手,他们设计合理,考虑周到,再加上有广大的程序员参与,代码的价值自然是字字珠叽,铿锵有力(对不起,偶最近《金装四大才子》看多了)。 接着就是EJB了,EJB就是Enterprise JavaBean, 看名字好象它是Javabean,可是它和Javabean还是有区别的。它是一个体系结构,你可以搭建更安全、更稳定的企业应用。它的大量代码已由中间件(也就是我们常听到的 Weblogic,Websphere这些J2EE服务器)完成了,所以我们要做的程序代码量很少,大部分工作都在设计和配置中间件上。 不过,每次的执行编译后的字节码需要消耗一定的时间,这同时也在一定程度上降低了 Java 程序的运行效率。 你一定会高兴地说,哈哈,原来成为Java高手就这么简单啊!记得Tomjava也曾碰到过一个项目经理,号称Java很简单,只要三个月就可以学会。 所以现在应用最广泛又最好学的就是J2EE了。 J2EE又包括许多组件,如Jsp,Servlet,JavaBean,EJB,JDBC,JavaMail等。要学习起来可不是一两天的事。那么又该如何学习J2EE呢?当然Java语法得先看一看的,I/O包,Util包,Lang包你都熟悉了吗?然后再从JSP学起。 你快去找一份Java的编程工作来做吧(如果是在校学生可以去做兼职啊),在实践中提高自己,那才是最快的。不过你得祈祷在公司里碰到一个高手,而且他 还愿意不厌其烦地教你,这样好象有点难哦!还有一个办法就是读开放源码的程序了。我们知道开放源码大都出自高手,他们设计合理,考虑周到,再加上有广大的程序员参与,代码的价值自然是字字珠叽,铿锵有力(对不起,偶最近《金装四大才子》看多了)。 是一种由美国SUN计算机公司(Sun Microsystems, Inc.)所研究而成的语言 如果你学过HTML,那么事情要好办的多,如果没有,那你快去补一补HTML基础吧。其实JSP中的Java语法也不多,它更象一个脚本语言,有点象ASP。 另外编写和运行Java程序需要JDK(包括JRE),在sun的官方网站上有下载,thinking in java第三版用的JDK版本是1.4,现在流行的版本1.5(sun称作J2SE 5.0,汗),不过听说Bruce的TIJ第四版国外已经出来了,是专门为J2SE 5.0而写的。 Java是一个纯的面向对象的程序设计语言,它继承了 C++语言面向对象技术的核心。Java舍弃了C ++语言中容易引起错误的指针(以引用取代)、运算符重载(operator overloading) 设计模式是高级程序员真正掌握面向对象核心思想的必修课。设计模式并不是一种具体"技术",它讲述的是思想,它不仅仅展示了接口或抽象类在实际案例中的灵活应用和智慧 Java自面世后就非常流行,发展迅速,对C++语言形成了有力冲击。Java 技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于个人PC、数据中心、游戏控制台
页:
[1]