Java相对于C#是否有优势?

3
这个问题可能听起来有点傻,但我的意图是了解Java相对于其他编程语言的优势?我猜想C#与Java更或多或少相似。此外,C#源自C++,而C++又源自C。
那么学习哪种语言更容易或有助于理解概念和开发程序呢?

1
那个问题让Java听起来像是最好的。然而,忽略这一点,Java非常跨平台。你甚至可以编写在手机上运行的Java应用程序。它提供了很多类似脚本的功能,比如内省,但是它处理字节码的方式足够高效,甚至比最快的脚本语言lua表现更好。我认为这些是Java最独特的特点。 - stinky472
如果这是“主观的”,并且应该被关闭,那么“Karthikeyan”的问题怎样才能写得比较Java和C#的质量而不会主观?这可能吗? - Nippysaurus
我担心你会因为主观、争论等问题而被严重地贬低。这很遗憾,因为发明一种新语言并不容易,(大概)没有人会毫无理由地这样做。这意味着,在某种程度上,每种语言都比其他语言更适合特定的任务。对于Java,有些人可能会说它是跨平台的(但c/c++也是),或者是带有GUI的跨平台语言(只需将Qt添加到c++中)。我的个人观点是,每种语言都是为了解决特定的问题领域而被发明出来的,在v2.0中,他们决定从其他语言中添加功能。 - Mawg says reinstate Monica
因此,学习哪种编程语言更容易理解概念和开发程序可能会有所不同。你可能会遇到一些人为BASIC(任何方言)或Pascal辩护,后者也被发明成为一种教学语言。你清楚自己想要了解什么吗?你想学习如何编写代码、如何设计软件、如何思考算法,还是其他什么? - Mawg says reinstate Monica
1个回答

10
  • Java在大多数平台上都有支持,而C#主要运行于其他平台,但又不被微软支持。
  • 相比C#,Java有更多的外部工具(如静态代码分析器),虽然随着时间推移,这种情况可能会发生变化。当进行虚拟机优化或错误检测的科学研究时,通常使用Java。
  • 由于Java和C#是由不同的公司开发的,因此在许可证、使用条款和条件、支持或软件价格等方面存在差异。

更新:.NET Core现在也在Linux和macOS上得到支持


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接