飞利浦·斯塔克|Java:C与Java的10个主要区别( 二 )


由于其内存分配 , Java在运行时仅在少数罕见用例中比C更快 。 Java将堆分开分配 , 在数据结构和自动垃圾收集方面提供了灵活性 , 这与C相比是高于水平的 。
7.安全
在安全的情况下 , 内存损坏是最大的一类高安全因素 。 不幸的是 , Java没有任何模拟规则 , 因为它的类型系统可以防止内存损坏——这在C中变得更加困难 。
C和Java在权限提升方面都有一些规则 。 然而 , 虽然Java有一个内部特权系统 , 但C不支持它 。 结果 , 你在C中得到静态数据隐藏 , 在Java中得到私有数据隐藏 。
如果你在 Web 浏览器内的插件中选择Java和C , 你应该选择Java , 因为Java经常一次发布大量安全补丁 。
8.对象管理
c提供手动对象管理 , 而Java提供自动对象管理 。 c操作员可以手动创建和销毁对象 。 另一方面 , Java很大程度上依赖于垃圾收集过程来完成这项工作 , 并且需要一些时间来收集 。 但是你不能承担在关键部分中意外使用Java进行内存管理的风险 。

9.汇编
大家已经知道 , C是编译型编程语言 , Java是解释型的 。 同样 , C直接把代码转换成机器语言 , 而Java是先把代码转换成字节码 , 再把这个字节码转换成机器语言 。 因此 , 编译语言往往比解释语言更快 , 尽管它们的平台依赖性是有问题的 。
10.学习曲线
一门新语言的学习曲线取决于学习者以前的编程经验 。 如果你是新手 , C应该是更简单的语言 , 因为它需要学习的概念更少 , 所以你可以在很短的时间内很快理解它的意思 。 另一方面 , 作为一个面向对象程序 , Java提供了许多特性 , 可能需要更长的时间来掌握所有的功能 。
C与Java:先选哪个?
由于C编程的功能较少 , 学习起来不太复杂 , 也不容易出错 , 所以先掌握C编程是明智的 。 然后 , 你可以学习Java和其他语言 , 如C++、C#、Objective-C或Python 。
【飞利浦·斯塔克|Java:C与Java的10个主要区别】学习C , 当你处理计算机科学和软件开发的低级语言时 , 你将不得不学习更多的编程 。 作为面向对象的编程 , Java被广泛用于开发项目和其他编程范例 , 它也是当前世界上收入最高的编程语言之一 。 所以 , 最终还是要选择适合自己的 。