Java和C的区别

来源:互联网 发布:mac 安卓sdk环境变量 编辑:程序博客网 时间:2024/05/01 12:46

C语言是面向过程的语言,执行效率高。

Java是面向对象的语言,执行效率比C语言低。

C语言比Java多了指针,Java的多线程机制使程序可以并行运行。

Java程序多用于网络。C语言的安全性不如Java,C语言没有Java的垃圾回收机制,申请的空间要手动释放。

Java的通用性好,可以跨平台直接移植。

Java采用Unicode字符集,C语言通常采用的是ASCII字符集,A—65,a—97。

C语言的变量可以不进行初始化,但Java的变量要进行初始化。

在C语言中,char类型占一个字节,在Java中char类型占2个字节。

Java面向对象的特征主要有封装,继承,多态。类的继承关系是单一的、非多重的,一个子类只有一个父类,子类的父类又只有一个父类。C语言支持“运算符的重载”,这是它的一个很重要的多态特征,是数据抽象和泛型编程的利器。它允许直接对对象进行四则运算,正像基本数据类型那样Java不支持这种多态机制,也是为降低复杂性。

Jvav可以支持方法重载和重写。在Java中比C语言多了一些修饰符,如访问修饰符Public(公共的)、Private(私有的)、Protected (受保护的)、默认。Java有super关键字,指代父类对象,通常被用于调用父类的构造方法或一般方法C语言则没有super关键字,两者都有this,指代当前对象。在Java中,除了static、final、private是静态绑定以外,所有方法一律按动态绑定处理。Java中可以将类组织起来用Package打包,而C语言没有。

0 0