您的位置:首页 > 编程语言 > C语言/C++

Java C++语法对比

2010-03-26 21:18 363 查看
Java
C++
没有友元类及友元方法
有友元类和友元函数
不能重载运算符
能重载运算符
类定义最后不用加分号,
如:
class Test
{
}
类定义最后要加分号,
如:
class Test
{
};
有引用,无指针,引用相当于C++中的指针
既有引用,又有指针
不支持多重继承,但有接口
支持多重继承,无接口
有统一根类Object
无统一根类,但MFC中大多数类以CObject为根类
能在类中初始化成员变量
不能在类中初始化成员变量
(新标准中,static const成员变量可以在类中初始化)
用super.方法 调用父类的方法
用 父类名::函数 来调用父类的函数
有包,无头文件
无包,有头文件
无名字空间
有名字空间(namespace)
String类
string类
class Dog
{
}
Dog dog;
定义了引用dog,并没有为dog分配内存空间
class Dog
{
};
Dog dog;
定义了对象dog,已为dog分配内存空间
new返回一个引用(指向所构造的对象)
如 Dog dog = new Dog();
new返回一个指针(指向所构造的对象)
如Dog *pDog = new Dog;
或Dog *pDog = new Dog();
类的方法自动具有多态性(static方法除外)
函数要加上virtual关键字才具有多态性
方法中不可以有默认参数
函数可以有默认参数
类和方法无需声明
类以及函数要先声明(或定义)后使用
运行时类型识别(RTTI)用instanceof
RTTI用typeid
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: