浅谈Java和C

Java和C都是指令式语言,不同之处是Java是一种面向对象的语言,而C是一种面向过程的语言。

另一个不同之处是,Java是跨平台的,在不同的操作系统中都可以通过JVM来解释Java程序,而C、C++、C#则与平台有关,有些指令只能在某些操作系统中才能执行。这是因为,Java是解释型语言,所有代码都会翻译成统一的、与系统无关的字节码,然后放到JVM上运行;而C是编译型语言,代码要先通过编译器转换成与系统相关的中间代码,然后才能运行。

再一个不同之处是,Java不支持系统调用,即无法与操作系统进行交互,这也是由它跨平台的特点决定的。而C则可以调用系统中的指令,这也是为什么Java中只有线程概念而没有进程概念,而C两者都有。

再者,Java无法对内存进行控制,而C则可以通过指针对内存进行人为分配。

还有一点,Java有垃圾回收机制,可以自动回收不再使用的空间,而C则要用free()函数来释放空间。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值