Java入门学习主题:了解JAVA和.Net不同之处。我们在学习java入门学习的时候,难免会对这个问题还有困惑,所以我们简单讲解一些JAVA和.net一些知识点,重新认识两者之间不同,Java与.net都有各自的好处,Java与.net都是面向对象的语言,不过JAVA和.net还是有些许不同之处,让我们来了解学习一下吧!
Java是上世纪九十年代诞生的一种面向对象语言,它吸取了C++的许多长处,其最大的特性是“跨平台”,由于它很好地满足了网络时代信息系统对高级语言的要求,因而在实践中得到广泛应用。
现阶段,我们的大多数人对NET的理解可以概括如下:首先,它是Java平台的一个克隆品,大家要注意这是一个平台,初次接触的朋友往往会将其与Java语言混淆,然后慢慢演变后,逐渐有了自己的特色。由于Java平台的最显著的特点是“平台独立”。
从理论上说,你可以在编译后,写一个程序,在安装了JVM的任何操作系统上运行。大多数人认为,.NET的出现是遵循Sun的这一伟大的概念 - 该平台的独立性,从而与Java的竞争。后来也有一些谁也不知道在哪里画的是,即使有这样的非Windows平台上单.NET CLR,也有很多.NET是无法移植到其他操作系统的结论,比如几乎Winform的不能移植到Linux的单声道了,所以得出了一个令人震惊的结论:微软甚至没有模仿模仿完整的,它实际上是一个伪跨平台的。
以上就是目前关于java开发与.net区别之处比较普遍的结论:NET致命的弱点,就是它不是真正的跨平台。有所有不甚了解的,可以看以下四点详细了解清楚:
一、.NET平台出现的意义不是支持跨平台,它出现的目的只是优化传统的Windows开发模式,使Windows开发更加方便快捷。它解决了COM时代的Dll Hell问题(.Net程序集版本控制),集成了多种语言(方便各种各样的程序员),每种语言编写的组件(程序集)之间可以毫无障碍地通讯,集合ob ject-Oriented和Component-Oriented于一体,你可以从一个组件(dll)中派生出一个新的类型而不需要该类型的所有源码(这个UnManaged时代不可能有),真正的实现了二进制兼容性(你改动程序集中的某一个公开成员,如果使用这个程序集的客户端程序没有使用到这个公开成员,那么客户端完全不需要重新编译),提供C++中没有的内存管理,支持异常处理等等。严格来说,微软发布.NET的第一天就是为了它的Windows,就没打算让你写的程序跑在其他操作系统之上(微软到目前为止还没有发布官方的非Windows平台的.NET CLR)。
二、再说Java平台和.NET两者追求的目标,前者从出现开始就认为:在互联网世界中,我要让一种语言跑在任何一个操作系统中;而后者则认为:在互联网世界中,我要让所有的语言都跑在同一个操作系统中(Windows)。两个平台从一开始设计的目的就不一样。
三、两者强调的重点不同:(红色部分都是其他人扩展出来的功能)
四、结合上面所述一样,两者平台结构类似,两个平台都是可以做到“跨平台”和“支持多语言”的。 至于为什么说使用Mono还不能把有些.NET程序移植到Linux,这个很容易解释,微软本来就没打算将.NET程序移植到其他平台,.NET中包含的一些丰富框架都是与Windows紧密相关的,你使用了这些框架,是很难再把它们翻译成非Windows平台中可以执行的代码。而且,Java也并不是完全的跨平台,跟你开发实际用到的框架有关。出现以上不能移植的情况,关键有两个地方,一个是你开发时使用的框架,一个是CLR(或者JVM),要看后者到底有没有能力把前者翻译成对应平台的可执行代码,总的来说,两者之间的侧重点不同而已。
总结:以上就是本次的java入门学习JAVA和.net不同之处的全部内容,其实简单地说,Java是绑定于一种语言的跨系统的平台,是一个有多家供应商提供竞争性产品的规范。.net是绑定于一种系统的多语言平台,是一个规范性较弱的垄断性产品。更多的java视频教程可以登录课课家官网查询相关课程学习。
欢迎光临 iCAx开思网 (https://www.icax.org/) | Powered by Discuz! X3.3 |