1、c#/java 都宣称跨平台,那么它们是如何跨平台的那,说着和废话一样,下面说说我的理解吧,c#/java语言之所以说是跨平台的,就是,用这两种开发的项目,编译后,不再像 c++一样,直接编译成机器码,而是中间语言,在项目需要运行时,由runtime,来提供解释执行的环境
2、oracle(sun)为了java的跨平台,对windows/linux/unix等提供了相应的runtime,也就是不同平台下的java虚拟机和jdk,
microsoft 则只实现了windows系平台下的运行时环境,也就是.net framework,对于linux/unix等平台撒手不管了,估计可能是因为要是.net framework 跨了平台,谁还买winserver啊
2、oracle(sun)为了java的跨平台,对windows/linux/unix等提供了相应的runtime,也就是不同平台下的java虚拟机和jdk,
microsoft 则只实现了windows系平台下的运行时环境,也就是.net framework,对于linux/unix等平台撒手不管了,估计可能是因为要是.net framework 跨了平台,谁还买winserver啊
3、现在有Xamarin主办的一个开源项目平台mono框架,目标就是用来支持c#语言完全跨平台的tool
4、.net framework和mono,对于程序员而言,都只是一个类库,要是可以的话,你也可以用c#,写一个类库,不需要授权,而java就不是了,必须oracle同意,你才能写java语言的类库,并发行,要不oracle怎么告google,android因为使用了java语言,没有被oracle授权,而被起诉要求赔偿26亿美元哪,