c语言和java哪个更好学

如题所述

C与Java从编程思想上来说完全不同.
Java是纯面向对象语言,用虚拟机解释执行,速度非常慢,大约是同等C语言程序速度的1/60。好处是程序执行和
操作系统
无关。非常适合在网络上使用。
C是面向过程的语言,编译出的程序和硬件,操作系统相关。程序运行效率非常高。好的C程序最多比同样的汇编程序慢10%.

两种语言入门都很简单。要想用好还是很费功夫的。

Java程序员都是做网络工作的,年薪可到10万美金以上。
C程序员一般是做硬件程序的,比如:PDA,手机,MP3等电子产品的开发。收入也不错。

最好两种语言都学。因为他们完全不同,不会互相干扰。
学C容易上手,最要是开发工具比较好用,便于实践。
学Java缺少良好的开发工具,熟悉,配置开发环境要花很长时间。如果是没全面学过编程的人,上手还是很困难的。

C++属于混合型的编程语言。有Java的特点,也有C的特点。最灵活,功能也最强。要学好花的功夫也越多。
C#和Java一样,是纯面向对象的语言。但不是解释执行的。

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强迫开发人员把所有例行程序包括在类中,事实上,用方法实现例行程序可激励开发人员更好地组织编码。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2017-08-07
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强迫开发人员把所有例行程序包括在类中,事实上,用方法实现例行程序可激励开发人员更好地组织编码。
望采纳
第2个回答  2020-02-23
C与Java从编程思想上来说完全不同.
Java是纯面向对象语言,用虚拟机解释执行,速度非常慢,大约是同等C语言程序速度的1/60。好处是程序执行和操作系统无关。非常适合在网络上使用。
C是面向过程的语言,编译出的程序和硬件,操作系统相关。程序运行效率非常高。好的C程序最多比同样的汇编程序慢10%.
两种语言入门都很简单。要想用好还是很费功夫的。
Java程序员都是做网络工作的,年薪可到10万美金以上。
C程序员一般是做硬件程序的,比如:PDA,手机,MP3等电子产品的开发。收入也不错。
最好两种语言都学。因为他们完全不同,不会互相干扰。
学C容易上手,最要是开发工具比较好用,便于实践。
学Java缺少良好的开发工具,熟悉,配置开发环境要花很长时间。如果是没全面学过编程的人,上手还是很困难的。
C++属于混合型的编程语言。有Java的特点,也有C的特点。最灵活,功能也最强。要学好花的功夫也越多。
C#和Java一样,是纯面向对象的语言。但不是解释执行的。
建议先学C,学透澈。再学Java,入门即可,了解面向对象的思路。最后学C++,用来实战。
我就是这么学的,3种语言都会。
第3个回答  2020-10-09
c是基础语言,java更容易入门,应用范围更广
第4个回答  2017-08-07
C语言简单一点 语法 特性什么的 Java语法多一点 另外包比较多,但是也要看你具体干啥。
相似回答