java语言与c语言那个更好(java语言与c语言的区别)
其实这个我觉得,主要看应用的场合及自身未来发展的规划,各有千秋。
c语言和java的区别?
1、设计思路不同:c语言是面向过程的语言,执行效率高;java是面向对象的语言,执行效率比c语言低。
2、通用性不同:c语言不能跨平台;java可以跨平台直接移植,只要有安装java虚拟机(jvm)就可以了。
3、面向对象:java的面向对象的特点很明显,而c则是一个地道的结构化语言。 java中有一个字符串类string, 通过调用 string.length()就可以知道字符串的长度,但是在c语言中,则需要调用函数strlen(str)来得到字符串(字符数组)的长度。由于c不是面向对象的语言,也就没有this的概念,因此当使用一个与某个“东西”相关的函数时,就需要不厌其烦的将代表这个“东西”的变量作为参数传递进去。
4、名称空间:java通过包(package)来实现名称空间,在c语言中,所有的函数都处于同一名称空间,也就是没有名称空间,因此就会很多程序提供的api接口函数都有一个前缀,例如mysql的mysql_init(), mysql_real_connect(), mysql_real_query()等函数名称前面的mysql_。
5、语法不同:
(1)、基本数据类型不同:c语言是int short long char float double 还有一些特殊类型 结构体,指针,联合体等,数组,字符串 。java 是byte int short long float double char boolean ,而且c语言的基本类型的位数和操作系统和机器相关,而java 是固定的;
(2)、文件组织方式不一样:c语言会把全局变量和方法的声明,放在一个文件里面,叫做头文件,而java 是以类来组织文件的。
6、应用领域不同:c语言主要用于驱动开发、操作系统、内核开发,嵌入式(单片机)、交换机、路由器等网络设备的开发;java主要是企业应用开发,包括服务器端开发、嵌入式领域、大数据技术、网站领域等。
c语言和java的现状
c语言近几年在社区排行榜中排名没怎么动过比较靠前,很多人初学喜欢学c语言,而且做底层开发的时候很多人倾向于c语言,比汇编好理解,速度也仅次于汇编。而且c可作为学习其他语言的基础,很多驱动和系统内核都是用c语言写的。
java近几年很火,社区排行榜也一直排前几。因为它相对于c语言可面向对象编程,吸取了c/c++的部分优点,可移植性更高,因为它在虚拟机上运行,除此之外,代码复用性高,很多数据结构和算法都已写成类文件可直接调用,开发周期短。对于web前端、android、企业级、移动开发是基础。很适合分布式的开发
综上所述,c语言和java虽然有多区别,但是有一点是不变的,只要学好任何一门的语言,其就业前景都将无比广阔。因此与其犹豫到底该学什么,不如现在就开始学习。