发布网友 发布时间:2022-02-28 21:56
共9个回答
懂视网 时间:2022-03-01 02:17
1、应用领域不一样
C语言主要用于驱动开发、操作系统、内核开发,嵌入式(单片机)、交换机、路由器等网络设备的开发;java主要是企业应用开发,包括服务器端开发、嵌入式领域、大数据技术、网站领域等。
2、基本数据类型不一样
c语言基本数据类型主要有int、short、long、char、float、double,还有结构体、指针等特殊类型,java基本数据类型主要有byte、int、short、long、float、double、char、boolean等。
3、通用性不一样
C语言不能跨平台,java可以跨平台直接移植,只要安装Java虚拟机(JVM)就可以了。
总结:
c语言跟java在应用领域、基本数据类型、通用性等方面有区别。
热心网友 时间:2022-02-28 23:25
c语言与java的区别与各自的优势:(c是面向过程的,java是面向对象的)
1.语言背景:
C语言是在单机时代应用非常广泛,它融合了高级语言的简单易用和汇编语言的执行效率。而Java是在研究电子消费产品开发平台和互联网应用的基础上实现的,它的许多语言特性也是从c语言那里沿用和发展,并且使面向对象更加自然和完善(如安全性和代码的移动性)。
2.语言跨平台:
C语言不可以跨平台,JAVA 是不怕这一点的,因为Java可以跨平台,在windows 和 unix 等系统上都可以很好的运行。
3.指针管理:
指针是c语言最大的优点,它可以使用户几乎可以访问计算机的所有内存资源和其他部分资源(就是指那里打那里)。同时也是c语言程序最难掌握和调试的问题,并且给系统的安全性和稳定性带来很大的困难。 而java中没有指针的概念,尽管也有数组和对象的引用的概念,但它的管理全部交给系统管理,这样*了用户的资源的访问,但是也给java系统带来安全性和稳定性。JAVA语言让编程者无法找到指针来直接访问内存无指针,并且增添了自动的内存管理功能,从而有效地防止了c语言中指针操作失误,如野指针所造成的系统崩溃。但也不是说JAVA没有指针,虚拟机内部还是使用了指针,只是外人不得使用而已。这有利于Java程序的安全
4.封装
在java中引入了package的概念,使面向对象和面向组件开发更加方便,而在c语言中没有package概念,需要其他方式来实现。Java都能够实现面向对象思想(封装,继乘,多态)。而由于c语言为了照顾大量的C语言使用者,而兼容了C,使得自身仅仅成为了带类的C语言,多多少少影响了其面向对象的彻底性!JAVA则是完全的面向对象语言,它句法更清晰,规模更小,更易学。它是在对多种程序设计语言进行了深入细致研究的基础上,据弃了其他语言的不足之处,从根本上解决了c语言的固有缺陷。
5.数据类型及类
Java是完全面向对象的语言,所有函数和变量部必须是类的一部分。除了基本数据类型之外,其余的都作为类对象,包括数组。对象将数据和方法结合起来,把它们封装在类中,这样每个对象都可实现自己的特点和行为。而c语言允许将函数和变量定义为全局的。
6.自动内存管理
Java程序中所有的对象都是用new操作符建立在内存堆栈上, Java自动进行无需内存回收操作,不需要程序员进行删除。而c语言中必须由程序贝释放内存资源,增加了程序设计者的负扔。Java中当一个对象不被再用到时,无用内存回收器将给它加上标签以示删除。JAVA里无用内存回收程序是以线程方式在后台运行的,利用空闲时间工作。
7. 字符串:
C语言不支持字符串变量,在c语言程序中使用Null终止符代表字符串的结束,在Java中字符串是用类对象(strinR和stringBuffer)来实现的,这些类对象是Java语言的核心!
Java没有函数,作为一个比c语言更纯的面向对象的语言,Java强迫开发人员把所有例行程序包括在类中,事实上,用方法实现例行程序可激励开发人员更好地组织编码。
引用前辈的分析,希望能帮到你!
热心网友 时间:2022-03-01 00:43
c语言与java的区别与各自的优势:(c是面向过程的,java是面向对象的)
1.语言背景:
C语言是在单机时代应用非常广泛,它融合了高级语言的简单易用和汇编语言的执行效率。而Java是在研究电子消费产品开发平台和互联网应用的基础上实现的,它的许多语言特性也是从c语言那里沿用和发展,并且使面向对象更加自然和完善(如安全性和代码的移动性)。
2.语言跨平台:
C语言不可以跨平台,JAVA 是不怕这一点的,因为Java可以跨平台,在windows 和 unix 等系统上都可以很好的运行。
3.指针管理:
指针是c语言最大的优点,它可以使用户几乎可以访问计算机的所有内存资源和其他部分资源(就是指那里打那里)。同时也是c语言程序最难掌握和调试的问题,并且给系统的安全性和稳定性带来很大的困难。 而java中没有指针的概念,尽管也有数组和对象的引用的概念,但它的管理全部交给系统管理,这样*了用户的资源的访问,但是也给java系统带来安全性和稳定性。JAVA语言让编程者无法找到指针来直接访问内存无指针,并且增添了自动的内存管理功能,从而有效地防止了c语言中指针操作失误,如野指针所造成的系统崩溃。但也不是说JAVA没有指针,虚拟机内部还是使用了指针,只是外人不得使用而已。这有利于Java程序的安全
4.封装
在java中引入了package的概念,使面向对象和面向组件开发更加方便,而在c语言中没有package概念,需要其他方式来实现。Java都能够实现面向对象思想(封装,继乘,多态)。而由于c语言为了照顾大量的C语言使用者,而兼容了C,使得自身仅仅成为了带类的C语言,多多少少影响了其面向对象的彻底性!JAVA则是完全的面向对象语言,它句法更清晰,规模更小,更易学。它是在对多种程序设计语言进行了深入细致研究的基础上,据弃了其他语言的不足之处,从根本上解决了c语言的固有缺陷。
5.数据类型及类
Java是完全面向对象的语言,所有函数和变量部必须是类的一部分。除了基本数据类型之外,其余的都作为类对象,包括数组。对象将数据和方法结合起来,把它们封装在类中,这样每个对象都可实现自己的特点和行为。而c语言允许将函数和变量定义为全局的。
6.自动内存管理
Java程序中所有的对象都是用new操作符建立在内存堆栈上, Java自动进行无需内存回收操作,不需要程序员进行删除。而c语言中必须由程序贝释放内存资源,增加了程序设计者的负扔。Java中当一个对象不被再用到时,无用内存回收器将给它加上标签以示删除。JAVA里无用内存回收程序是以线程方式在后台运行的,利用空闲时间工作。
7. 字符串:
C语言不支持字符串变量,在c语言程序中使用Null终止符代表字符串的结束,在Java中字符串是用类对象(strinR和stringBuffer)来实现的,这些类对象是Java语言的核心!
Java没有函数,作为一个比c语言更纯的面向对象的语言,Java强迫开发人员把所有例行程序包括在类中,事实上,用方法实现例行程序可激励开发人员更好地组织编码。
c语言和java的区别不是一句两句说清的 复制的别人的 希望对你有帮助
热心网友 时间:2022-03-01 02:18
(1)楼上的已经说了好多,但感觉你也就是随便提了这个问题而已,说实话,在百度上提这个问题,意义不大,都是老生常谈,C和java要系统的学才可以,如果只是运用这两种语言的话,大可不必问及他们的区别,因为在你学了java后你不会问出这个问题,如果要深究语言本身,百度绝对不是一个学术的好地方,你可以找一些文献来看。
(2)可能你已经有了一些C的基础,现在想开始一门新的语言,那么在中国听到最多的可能就是java,你也自然在开始学java前想了解一下,它和c的区别,那么如果是这样的话,不要犹豫了,买一本java的专业点的书开始吧(最好不找什么入门的书)。
(3)不要以为语言只有C,Cpp,C#,java。其实这些已经都老掉牙了,还有一些中国大学里不多提及的语言,如:非常优雅强大的python,非常诡异的perl,等等。
(4)另外给你推荐一个编程的神器:emacs,但关于它的资料大都是英文的。
热心网友 时间:2022-03-01 04:09
java可以不受平台的*,而且是面向对象的,符合当今主流编程思想。不过缺点就是占用空间大,运行效率比C差。C就不用说了,所有编程的基础。两种语言在某些领域都有其自身的优势。
热心网友 时间:2022-03-01 06:17
一个是面向过程,一个是面向对象,基本语法没什么不同,主要是编程思想
热心网友 时间:2022-03-01 08:42
两个是不同的程序语言,区别有很多:
语法不同;
单文件的编译时间java比C语言快;
C语言可以直接操作内存,java不能直接操作;
C语言可以封装动态库,java不行;
C语言的代码不容易跨平台,java的代码容易跨平台;
C语言有指针,java没有指针;
C语言可以直接操作串口,java需要第三方jar包支持;
C语言的线程更加灵活,java的线程都已经封装好了;
C语言做单独功能,可以增加效率,java适用做web应用开发;
unix是C语言编写的,java也是C语言编写的;
JAVA做web开发的时候,已经有很多成型的框架技术,C语言很少,且需要处理底层内容,对应不熟悉计算机原理的开发者难度很大;
JAVA的开源包太多了,C语言也有但是偏少,而且面向某个业务应用领域的框架没java多……
(N多,不一一列举)
热心网友 时间:2022-03-01 11:23
最本质的区别:C面向过程,Java面向对象
热心网友 时间:2022-03-01 14:21
两者都是高级语言
从编程思想来看
C语言为面向过程语言
Java 为面向对象语言
从对地址的可操作性上来看
C语言可以直接对硬件操作
Java 不能直接对硬件操作
所以在硬件安全性上考虑,Java更安全,不容易引发硬件崩溃
从效率上来看
C语言效率非常高,在所有编程语言中名列前茅
Java 执行效率一般,计算效率还不错,总体上来讲效率马马虎虎
从可移植性上来看
C语言硬件依赖极高,一旦硬件环境改变,程序运行不能的可能性很高
java 硬件依赖几乎为零,只要机器装有相匹配的虚拟机,任何机器上编写的代码都可以通用