当前位置: 移动互联网学院 > Java培训 > JAVA培训常见问答 > C语言和Java的区别是什么
C语言和Java的区别是什么 时间:2017-08-29     来源:华清远见JAVA学院

C语言和Java作为编程界的两大编程语言,备受广大编程爱好者喜爱。两者之间,有联系又有区别。下面华清远见Java培训学院小编带大家了解一下C语言和Java的区别是什么

C语言和Java在继承中的区别

继承很好理解,就是子类继承父类,拥有父类的一些特性,这点和基因遗传有些类似。虽然同样是继承,但是Java和C语言在继承时,还是有些区别的。

C语言是多线继承,比如:小轿车和货车都继承了汽车类,奥迪2000是继承小轿车的,东风大卡车是继承货车,这样奥迪2000也可以继承货车,东风大卡车也可以继承小轿车。

JAVA是单继承的,比如:小轿车和货车都继承了汽车类,奥迪2000是继承小轿车的,东风大卡车是继承货车,这样奥迪2000就不能继承货车,当然东风大卡车也不能继承小轿车。Java这种单继承的方式显然更加清楚,而且Java为了摆脱单继承造成的劣势,又引入了接口实现的思想,一个类可以通过实现接口中的方法来达到类似多继承的效果。

C语言和Java在动态、静态绑定中的区别

在C语言中,为了允许运行时动态决定哪个函数被调用,一个函数必须用virtual修饰。virtual关键字被自动继承,用以支持多态;凡是没有用virtual修饰的成员函数(包括static)都是静态绑定的,即在编译时决定调用哪个版本

而在Java中,除了static、final、private是静态绑定以外,所有方法一律按动态绑定处理。

C语言和Java在初始值的区别

在C语言中,是可以不初始化使用的,而在JAVA中,是必须初始化值的。

C语言和Java在抽象方法或抽象类的区别

C语言的对等语法是“纯虚函数”和“抽象类”

Java使用abstract关键字修饰抽象方法或抽象类,final类不能被继承

都使用抽象类作为继承层次中的基类,提供一般概念,由子类实现其抽象方法,且抽象类都不能被直接实例化为对象

C语言和Java在super关键字的区别

JAVA super关键字,指代父类对象,通常被用于调用父类的构造方法或一般方法

C语言没有super关键字

以上介绍了一下C语言和Java的区别是什么,两种语言各有各的优势,适合的编程领域也不同。其中C语言的前景一直很好,也很稳定;Java的前景则是稳中有增,凭借自身语言优势,一跃成为编程语言排行榜首位,也是当前后欢迎的培训语言。如果您对Java编程有兴趣,可以联系我们的客服,咨询一下我们的JavaEE+大数据课程,说不定下一个年薪20万就是你!

X