1、Java采用Unicode字符集,增加了对非拉丁语系的支持,一个汉字可以直接作为一个字符常量进行赋值而在C++中必须做为字符串处理
char chTemp = '我';
System.out.println(chTemp);
Java字符是一个16为的无符号整数,C++中为8位
2. Java标识符可以以美元符$开头,可含有所有十六进制值大于0xc0的Uniode码额
3.c++的允许整数的大小基于不同的执行环境,但是Java则不同,Java的int总是32位,而不管出于什么平台。short类型在不同类型的计算机中存储时候,高地位字节顺序可能有差异,所以尽量不用
4.Java中布尔类型boolean是一个独立的类型,而不像C++中bool代表1和0两个整数,所以布尔类型无法转换成数字
5.Java中浮点型默认为double类型,若要表示一个float类型的数值,需要有一个后缀f
6.变量重名错误,C++中下述代码,变量的重定义会导致隐藏先定义的变量
而Java中上述代码会有两处错误首先是变量的重名,然后是while(true)布尔类型的错误
7.Java中的instanceof运算符,作用是测试它左边的对象是否是它右边的类的实例,返回boolean类型的数据
8.Java没有sizeof操作符,因为所有数据类型在所有机器中的大小都是相同的,而C++则不同,为了在不同机器上进行移植引入sizeof
9.Java中的枚举enum创建后,编译器会自动添加一些有用的特性。会创建toString()方法,以便可以很方便地显示某个enum实例的名字;创建ordinal()方法,用来表示某个特定enum常量的声明顺序……而C++中的枚举为整型
10.Java没有类似C++头文件的功能,所以类的成员方法实现必须写在声明之后,而不能用类似C++的类内声明,类外实现。接口和内部类为Java提供了一种将接口与实现分离的更加结构化的方法。Java中的class定义后不需要;(分号)。
待续