Java、C和Python有多相似?

2024-04-28 04:19:30 发布

您现在位置:Python中文网/ 问答频道 /正文

我知道这是一个宽泛的问题,但任何答案都值得赞赏。


Tags: 答案
3条回答

Python是一种动态语言,而Java和C实际上不是。这和另外两个完全不同。在Python中有一些方法不能很好地转换为其他方法,反之亦然。

Java和C看起来是一样的,但它们在表下有区别。作为其中一个方面的专家,并不会让你在另一个方面凭借任何想象力成为专家。语法很相似,库也很相似,因此在其中一个库中提高速度会更容易,但是有些微妙的地方可能会让你绊倒。

C和Java有几乎相同的语法和非常相似的库。有一些差异需要注意(例如,Java中的类型擦除)。

Python是一种完全不同的动物。它是一种动态语言(其他两种语言不是)。Python最终在风格上更接近于Ruby。

全部:

  • 在系统上需要某种形式的运行时(JVM/.net/Python运行时)
  • 所有这些都可能在没有运行时的情况下编译为可执行文件(这是一个不确定的情况,没有一个是这样设计的)
  • 是好语言
  • 它们都有比其他两个更合适的特定区域

爪哇语:

  • 努力做到跨平台——通常是成功的
  • 无法访问不在SDK中的平台功能
  • 三个更改中最慢的,并且不包含其他两个相同的特性,例如闭包
  • 非常向后兼容(部分原因是前一点)
  • 快(大约比C慢2倍,比python快几倍)
  • 可能是三个图书馆中支持最多的
  • 已经使用J2EE部署了强大的多平台服务器系统
  • 可扩展到嵌入式(我已经在两个不同的嵌入式java项目上工作过——即将来到您附近的一个电缆盒)
  • 静态的

C#

  • 更快地添加新功能
  • 仅限Windows—Mono是跨平台的,但不支持库。
  • 开始时与Java非常相似,但现在有了更多的语言特性。
  • 更好地访问windows api
  • 不确定速度——我认为它类似于Java。
  • 很好的图书馆支持
  • 三个你必须支付的唯一一个(它是免费的“入门级”)
  • 静态的

Python

  • 语言是跨平台的。对非语言平台访问(如拖放)不确定——有人知道吗?
  • 可能是一门容易学的语言
  • 三种语言中只有一种不使用类c语法
  • 三种语言中最慢的,但与其他动态语言相比仍然非常快。
  • 动态的

This link is also interesting

相关问题 更多 >