C++ JAVA 的区别

来源:互联网 发布:交通组织优化定义 编辑:程序博客网 时间:2024/06/05 03:54

JAVA:

1.动态绑定是默认行为

2.单根继承(使垃圾回收机制容易处理)

3.垃圾回收器管理new的内存

4.变量作用域和生命周期(超出作用域,生命周期不一定结束)

 {

 int x = 9;

    {

    int x = 90; // Java会报错,但C++是没问题的

    }

}

5.类未进行初始化时,数据成员有默认值,以确保基本类型的成员变量得到初始化。 如果有些变量未进行必要的初始化,编译器会报错。

6.用包(反转域名)避免和另一个模块相同名字




C++:

1.动态绑定需要用关键字virtual

2.支持多继承

3.程序员需要自己管理new相关的内存

4.作用域和生命周期可相互对应

5.类未进行初始化时,数据成员会有个不确定的值。如果有些变量未进行必要的初始化,编译器给予警告。

6.用namespace避免重名


0 0
原创粉丝点击