Java vs C
C# 是一种通用、现代、面向对象的编程语言,发音为“C sharp”。它是由安德斯·海尔斯伯格和他的团队领导的微软开发的。
Java 是一种并发、基于类、面向对象等通用计算机编程语言。Java 应用程序通常被编译成字节码,可以在任何 Java 虚拟机(JVM)上运行,而不管计算机架构如何。
下面是 C#和 Java 的一些主要区别:
特征 | C# | Java |
---|---|---|
运算符重载 | C#支持多运算符重载。 | Java 不支持运算符重载。 |
运行时环境 | C#支持 CLR (公共语言运行时)。 | Java 支持 JVM (Java 虚拟机)。 |
API 控制 | C# API 均由开源社区控制。 | Java API 也由开放社区进程控制。 |
公共类 | 在 C#中,一个源代码里面可以有很多公共类。 | 在 Java 中,一个源代码里面只能有一个公共类,否则会出现编译错误。 |
已检查异常 | C#不支持针对已检查异常。在某些情况下,检查异常对于程序的顺利执行非常有用。 | Java 支持选中和未选中的异常。 |
平台依赖关系 | C#是跨平台的,运行在两个基于 Windows & Unix 的系统上。 | Java 是一种健壮且独立于平台的语言。Java 的平台独立性是通过 JVM 实现的。 |
指针 | 在 C#中指针只能在不安全模式下使用。 | Java 无论如何不支持指针的使用。 |
条件编译 | C#支持进行条件编译。 | Java 不支持进行条件编译。 |
goto 语句 | C#支持 for goto 语句。 | Java 不支持 for goto 语句。使用 goto 语句会导致 Java 代码出错。 |
结构和联合 | C#支持结构和联合。 | Java 不支持结构和联合。 |
浮点 | C#不支持 strictfp 关键字,这意味着可能无法保证浮点数的结果在所有平台上都相同。 | Java 支持 strictfp 关键字,也就是说它对于浮点数的结果对于各种平台都是一样的。 |
版权属于:月萌API www.moonapi.com,转载请注明出处