从概念上看,C语言是一门面向过程、抽象化的通用程序设计语言;Java是一门面向对象编程语言,而Java语言是从C语言衍生而来,它吸取了C++语言的各类优势,而且摒弃了C++里难以理解的多继承、指针等概念。从概念能够看出C语言至关于Java的基础语言。
从应用领域上看,C语言和Java的应用领域几乎没有重合。由于随着这几年Java、web、PHP等语言的出现,它们凭借比C更简洁的、更安全的性能快速崛起,抢占了大量的市场。目前由于Java有完善的框架,在多线程、高并发方面有着较好的稳定性,因此Java主要应用于企业级应用开发、大型系统开发等领域。而C语言因为编程的复杂性,退守到了系统级别语言,并且由于想要系统级软件能够发挥出机器的功能,它的底层核心就须要用C/C++来编写,因此C语言主要应用于软件工业。
从语言自己来看的话,有这几点区别:
一、语法不一样;java
二、单文件的编译时间java比C语言快;web
三、C语言能够直接操做内存,java不能直接操做;编程
四、C语言能够封装动态库,java不行;安全
五、C语言的代码不容易跨平台,java的代码容易跨平台;多线程
六、C语言有指针,java没有指针;并发
七、C语言能够直接操做串口,java须要第三方jar包支持;框架
八、C语言的线程更加灵活,java的线程都已经封装好了;编程语言
九、C语言作单独功能,能够增长效率,java适用作web应用开发;ide
十、unix是C语言编写的,java也是C语言编写的;高并发
十一、JAVA作web开发的时候,已经有不少成型的框架技术,C语言不多,且须要处理底层内容,对应不熟悉计算机原理的开发者难度很大;
十二、JAVA的开源包太多了,C语言也有可是偏少,并且面向某个业务应用领域的框架没java多;