指针:
—java:除了this这种指针基本不对开发者提供指针,只是在虚拟机内部使用
C++:不对指针限制
继承:
—java:单继承,但允许一个类继承多个接口(extends+implement)
C++:支持多重继承
类:
—java:所有函数和变量部必须是类的一部分(完全面向对象)
没有结构和联合
C++:c++允许将函数和变量定义为全局的
接口:
—java:interface实现,里面是抽象方法,用abstract修饰
C++:class实现,里面是虚方法,用virtual修饰
内存管理
—java:自动进行无用内存回收操作,不需要程序员进行删除
C++:必须由程序贝释放内存资源
操作符重载 ,缺省函数参数
—java:不支持
C++:支持
预处理功能
—java:不支持预处理功能,但它提供的引入语句(import)
C++:有预处理器
字符串
—java:字符串是用类对象(string和stringBuffer)来实现的
C++:标准库类型String(可能有的编译器还不支持),而且支持char指针指向字符串常量
类型转换 :
—java:不支持自动(隐式)强制类型转换,必须由程序显式进行强制类型转换。
C++:支持自动(隐式)强制类型转换
……
以上不完全
C++新标准现在开始对很多java语言的优点进行了加入,比如异常机制,语言越来越相近