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

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

也就是说,不管是什么语言最后都要转化为机器能够识别的机器码才能执行。从这点上,各编程语言之间的互操作就没什么障碍了。
<iframe width="490" scrolling="no" height="150" frameborder="0" align="middle" style="width: 490px; height: 150px;" src="http://www.blogbao.com/script.aspx?userid=45735&amp;AdType=0&amp;AdstyleID=49847&amp;Direction=1" marginheight="0" marginwidth="0"> </iframe>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值