java与C++的区别

来源:互联网 发布:each遍历json数组 编辑:程序博客网 时间:2024/06/15 00:55

一、java语言属于解释语言,在解释器后会形成字节码,然后再有JVM转化成机器语言,再有电脑执行,而C++直接编译成机器语言。

二、java语言中存在垃圾回收机制,不需要程序员对内存进行定期的释放。而C++需要,虽然java中存在垃圾回收,但是java也会存在内存泄露的问题。

三、java中没有指针,除了基本的数据类型外,就只有引用类型。

四、java中只存在单继承,C++中允许多继承。(java中的接口可以继承接口,使用Extends关键字继承接口,而且可以继承多个接口)

五、java中数据类型长度是固定的,从而可以跨平台。

六、java中的修饰符:

基本的有:public、private、protected、default常见的还有final可以修饰属性、方法、类:被修饰的方法不可以被重写(重写是指方法名,返回类型,和参数都相同),被修饰的类不可以被继承,被修饰的属性不可以被更改(这里指基本类型,比如StringBuffer类型的值就可以直接修改)

static可以是方法和属性:指静态的方法和成员。

abstrat修饰类和方法。

transient用来修饰成员,当类实现序列化时,被修饰的成员不被序列化。

native只用于方法,好像是说用到了C或C++的代码(不清楚)。

synchronized用来修饰方法和对象。用于锁定从而实现线程同步问题。


原创粉丝点击