关于.net与java跨平台的问题

来源:百度知道 编辑:UC知道 时间:2024/06/18 01:32:23
1.跨平台到底是什么意思?
2.用LINUX既可以打开用.net开发的aspx页面,又可以打开用java开发的jsp页面,这一点是跨平台的概念中的一点吗?如果是的,那也就是说.net开发的系统也可以在LINUX上面运行啊?为什么总是有人说微软的。NET不能跨平台,而JAVA就跨平台呢?

我只回答你的第二个问题,你就明白了:
用LINUX可以打开.net开发的aspx页面,是因为这个网站的服务器是windows平台的,装有.net framework,代码(如:数据库操作,配置文件的读写)都只是在服务器端运行处理,而处理完成,最后送到你手上的,只是一段HTML代码。
是HTML能跨平台,而不是.net能跨平台,LINUX能打开所有类型的网页,明白了吗?

如果你用LINUX弄成服务器,在上面挂一个网页,就不能挂.net的,为什么?因为它不能装.net framework。
而JAVA即可以装在windows平台上,又可以装在LINUX上,这就是跨平台。

已经说得非常通俗了,还不明白就自己去恶补一下。

用LINUX既可以打开用.net开发的aspx页面,又可以打开用java开发的jsp页面
这不是跨平台的意思,这只是B/S的特性

跨平台只的是,你用.net做的东西可以运行在多个平台下,比如windows和linux,.net已经可以跨平台了,你试试linux下的mono

1. 跨平台的意思是基于.net或java开发的程序可以在多个平台上运行(不是在多个平台上访问,是运行),这里的平台包括硬件和软件,比如硬件的有x86 PC平台(我们常见的电脑),Arm 掌上电脑平台等;软件的有Windows平台,Linux平台等。
2. 就像我再前面说的,跨平台的衡量标准是在多平台上运行,而你说道的是访问而不是运行。目前来看,.net和java都是跨平台的,只是微软的局限性很强,仅能跨同样基于微软操作系统的PC和掌上电脑平台,而基于虚拟机机制的java则更加宽泛一些,除了可以在PC和掌上使用外,还支持了包括Windows和Linux在内的几乎所有软件平台。

Ps:楼上说道的Linux下面的所谓.net方案Mono,哪个东西不是微软出的,也没有微软为.net运行时提供的诸多特性,仅仅是一个不成熟的“仿制品”。

java靠的是JVM机制
也就是说只要有JVM的机器都可以运行JAVA了,所以在每个有JVM的电脑上都可以顺畅的使用java
你要理解平台的概念,".n