C++/C与Java的区别

本文对比了C++/C和Java在跨平台、指针、多重继承、数据类型、内存管理、操作符重载、字符串、goto语句、类型转换、缺省参数函数和预处理功能等多方面的区别。Java强调安全性,简化了内存管理,但牺牲了运行效率,而C++则提供了更底层的控制和更高的运行效率。
摘要由CSDN通过智能技术生成

Java 是由 C++发展而来的,保留了 C++的大部分内容,其编程方式类似于 C++。但 Java 的句法更清晰、规模更小、更易学。Sun 公司曾对多种程序设计语言进行分析研究,最终推出了 Java。Java从根本上解决了C++的固有缺陷,形成了新一代面向对象的程序设计语言(当然了解决问题也是需要代价的,总结起来就是不能自由访问内存,速度变慢)。

一、跨平台(C\C++和Java)

Java是基于JVM虚拟机的跨平台语言,一次编写,到处运行。

C/C++ 编译成本地机器码, 可以由操作系统直接运行,运行效率较高。

Java 编译成字节码,需由Java虚拟机读取运行, 所以效率偏低,但可通过JIT提高运行效率。

二、指针(C\C++和Java)

Java (Python和Js)没有指针的概念。在 C/C++中,指针操作内存时,经常会出现错误。而在Java中是没有指针这一概念的,因此也有效地防止了一系列由指针引起的操作层失误(如指针悬空所造成的系统崩溃),更有利于 Java 程序的安全。但是指针提供了不需通过变量就能对内存直接进行操作的能力,所以Java不能编写一些接近硬件的、底层的应用程序,如设备驱动程序,病毒等等。

<
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值