您的位置:首页 > 编程语言 > Java开发

Socket 实例之透析java,C#的互操作

2008-03-02 10:51 253 查看
java,c#编程语言编写的程序之间是可以互相操作的。用java写的Socket聊天功能的服务端和客户端之间,和用C#编写的Socket聊天功能的服务端和客户端之间是可以相互通信的。简单的说就是,把C#的服务端跑起来的话,用java的客户端同样可以和这个服务端通信。这个观点其实并不难理解,只是我们在使用编程语言的时候,一般都比较会被编程语言的API所限制。
我们知道在Java中引入了虚拟机的概念,即在机器和编译程序之间加入了一层抽象的虚拟的机器。这台虚拟的机器在任何平台上都提供给编译程序一个的共同的接口。编 译程序只需要面向虚拟机,生成虚拟机能够理解的代码,然后由解释器来将虚拟机代码转换为特定系统的机器码执行。在Java中,这种供虚拟机理解的代码叫做 字节码(ByteCode),它不面向任何特定的处理器,只面向虚拟机。每一种平台的解释器是不同的,但是实现的虚拟机是相同的。Java源程序经过编译 器编译后变成字节码,字节码由虚拟机解释执行,虚拟机将每一条要执行的字节码送给解释器,解释器将其翻译成特定机器上的机器码,然后在特定的机器上运行。



也就是说,不管是什么语言最后都要转化为机器能够识别的机器码才能执行。从这点上,各编程语言之间的互操作就没什么障碍了。


内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: