c c++ java的区别
发布网友
发布时间:2022-04-26 00:28
我来回答
共7个回答
热心网友
时间:2023-01-20 18:18
C++就是“带类的C”,最大区别就在于,C++是面向对象的,面C是面向过程的。定义一个类,也就是定义一类对象。可以用这个类去定义对象的实例。每类对象有自己的属性和方法,方法就像C中的函数的作用。只不过是针对某一特定的对象,而C中的函数可以在任何过程调用。
C是最古老的语言,至少有30年的历史了,一直到现在它仍然是运行效率最高的高级语言,随着面向对象思想的出现,与C兼容的C++出现了,并且和C一样,在各种觉平台上都有相应的编译器,之后,才出现了Java,它是一种纯面向对象的静态语言,语法与C类似,但抛弃了C++中令人诟病的复杂设计而大受欢迎。再后来,出现了C#语言,它是微软挂牛头卖狗肉的产品,打着C的名号抄袭Java,初衷是争夺Java的服务器端编程的市场,现在的ASP.net就是以C#为核心的一个开发体系。
总的来说C/C++在工业开发包括硬件驱动领域依然是龙头老大,C++也占据了桌面软件市场的主要份额,至于服务器端编程(也是就企业应用开发)Java的地位不可撼动
热心网友
时间:2023-01-20 19:36
C语言
C语言的优点:
1.简洁紧凑、灵活方便
2.运算符丰富
3.数据结构丰富
4. C是结构式语言
5. C语法*不太严格,程序设计自由度大
6. C语言允许直接访问物理地址,可以直接 对硬件进行操作
7. C语言程序生成代码质量高,程序执行效 率高
8. C语言适用范围大,可移植性好
9. C语言有一个突出的优点就是适合于多种 操作系统,如DOS、UNIX,也适用于多种机型
10.有效地将一个较复杂的程序系统设计任 务分解成许多易于控制和处理的子任务,便 于开发和维护
C语言的缺点:
1. C语言的缺点主要是表现在数据的封装性 上,这一点使得C在数据的安全性上做的有 很大缺陷,这也是C和C++的一大区别。
2. C语言的语法*不太严格,对变量的类 型约束不严格,影响程序的安全性,对数组 下标越界不作检查等。从应用的角度,C语 言比其他高级语言较难掌握。
3.可重用性差
4.数据安全性差
5.难以开发大型软件和图形界面的应用软件
6.把数据和处理数据的过程分离为相互独立 的实体
7.当数据结构改变时,所有相关的处理过程 都要进行相应的修改
8.每一种相对于老问题的新方法都要带来额 外的开销
9.图形用户界面的应用程序,很难用过程来 描述和实现,开发和维护也都很困难
C++
C++优点:
1.可扩展性强
2.高效 简洁 快速
3.可移植性
4.面向对象的特性
5.强大而灵活的表达能力和不输于C的效率
6.支持硬件开发
7.程序模块间的关系更为简单,程序模块的 独立性、数据的安全性就有了良好的保障
8.通过继承与多态性,可以大大提高程序的 可重用性,使得软件的开发和维护都更为方便
C++缺点:
1.比较底层,易用性不是很好
2.多重继承和友元机制
3.标准库涵盖范围不足
4.开发周期长
5.非并行
6.掌握有难度
7.粒度封装不够
Java的优点:
1.简单性
2.面向对象性(面向对象的程度可以达到 95%)
3.健壮性
4.跨平台性
5.高性能(自动垃圾回收机制)
6.多线程
7.动态性
8.安全性
Java的缺点:
1.效率低(毋庸置疑)
2.跨平台是它最大的优点也是最大的缺点
3.复杂性(做一个项目需要很多的知识,涉 及面广)
热心网友
时间:2023-01-20 21:11
c是面向过程的。很灵活,功能强大,但是它适用于编写操作系统软件。比如在嵌入式系统中用c就很多。
c++是c的超集,也就是说c++包含c。c++对c进行了扩充和发展。为什么要有c++呢?是为了解决大型软体开发的需要。也就是说c++是为了解决大型应用软件开发而对c进行的扩充。主要是引进了面向对象的概念。在c的结构体的基础上,提出了类的概念。c++说简单点,就是多了个类。
java是面向对象的。java开始出来的时候是想应用到嵌入式领域,但是发展到后来就逐渐在其它领域发展迅猛。
其实这三者同属一家。c 和c++更是联系密切。
如果你在工程领域,比如单片机,嵌入式等。你学好c就已经非常满足你的需求了。
如果你做软件开发(主要是应用软件,纯软件的,比如你想要开发一个软件管理系统,你要参与设计一个类似word的大型应用软件,呵呵),那么你就要学c++了。毕竟现在如果不懂类的概念显得多么的落伍。至于java。上面的哥们说了,想快点入手没什么基础就学java 。
热心网友
时间:2023-01-20 23:02
c应用在嵌入式等技术中,可以说用好了能解决任何问题。
c++包含c所有在c中能用的程序c++都能用。是个超级,封装性和安全性要好于c
java用我们领导的话说不是计算机相关专业的,想快点入手没什么基础就学java
有句话就是c++学明白了java就很容易学会。但反之不行。
真正的程序员是用c++的!
如果嵌入式的话你还要会c!
可以说c++什么都行!
热心网友
时间:2023-01-21 01:10
C是面向过程的~~C++即面向过程~又面向对象~~JAVA是纯面向对象的~~
面向过程:程序=数据+算法;
面向对象:程序=对象+对象+对象......+对象;
热心网友
时间:2023-01-21 03:35
++++x不合法吧。
而且·请不要写这种无法保证所有编译器判断相同的代码。
热心网友
时间:2023-01-21 06:16
参*
·
不要侮蔑你不知道的真理,否则你将以生命补偿你的过失。