gpt4 book ai didi

c# - 为 JVM 实现 C#

转载 作者:IT老高 更新时间:2023-10-28 11:35:49 28 4
gpt4 key购买 nike

是否有人尝试为 JVM 实现 C#?作为一名 Java 开发人员,我一直很羡慕 C#,但我不愿意放弃 JVM 的可移植性和成熟度,更不用说它的多样化工具了。

我知道 JVM 和 CLR 之间有一些重要的区别,但有什么是最引人注目的吗?

最佳答案

CLR 和 JVM 之间存在非常显着的差异。

几个例子:

  • Java 没有用户定义的值类型
  • Java 泛型完全与 .NET 泛型不同
  • C# 的许多方面都依赖于框架的元素 - 委托(delegate)等。您还需要移植该库,即使对于 语言 方面也是如此。
  • Java 不支持 JVM 级别的属性和事件。你可以伪造其中的一些,但它不会是一样的。
  • 我不相信 Java 有任何与传递引用参数等效的功能,即使在 JVM 级别也是如此
  • 虽然我不确定 C# 规范中有多少细节,但与不同内存模型有关的细节很可能会受到影响。
  • 一般来说,不安全的代码在 Java 中可能是不可能的
  • JNI 和 P/Invoke 与 native 代码的互操作性非常不同。这对您来说可能不是什么大问题。
  • 您必须伪造运算符重载和用户定义的转换

您可能可以移植 很多 的 C# - 但您的体验会非常不满意,IMO。

反过来说,你知道IKVM ?它允许您在 .NET 中运行 Java 代码。

关于c# - 为 JVM 实现 C#,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/682608/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com