码迷,mamicode.com
首页 > 编程语言 > 详细

Java 和C/C++的“语法”上的差异!

时间:2016-07-31 13:11:09      阅读:179      评论:0      收藏:0      [点我收藏+]

标签:

额其实认为语言语法之间是没有可比性的!

但是因为额曾经学过C/C++,而今又学Java,有赵本山说的话:“知识都学杂了!”,所以我个人总结一下,望提醒自己!

Java 和C/C++的对比:

Java中:

double 要用%f;

布尔型:boolean;

字符型占两个字节;

If , while,for 中进行真假判断时只能使用逻辑表达式,不能用数字。

较长的整数后要加L;

默认所有实数都是double类型的;

安全性高:当高级类型转换为低级类型会报错!例;想要将double转换为float, float a=2.0f(F);

取余时:被除数和除数可以是实数;但所得余数的正负只和被除数相同;

Java中没有指针:

A  *a=new  A();//C++

A  a=new  A();//java

动态分配内存时:c/c++中是用栈中指针a来指向分配的堆中空间,

而java在形式上用类的对象a(相当于静态指针变量)来指向堆中的内存,但可以用a代表堆中的内存;

构造函数:

Java中如果你定义了有参的构造函数,则当你调用无参的构造函数时,必须自己定义无参的构造函数;而C++中不会这样;

当一个对象被创建时,会对其中各种类型的成员变量自动进行初始化,数值型的被初始化为;boolean型被初始化为false;引用被初始化为NULL;

C++、C中数组可以在栈中创建,但java 中数组是引用类型,只能在堆中创建。

 

C和C++ 中枚举类型enum是可以用0,1……来表示的,但java中不行;

例:enum MyColor { red, green, blue };

MyColor m= red;//CC++中定义枚举类型新变量

MyColor m= MyColor.red;//java中定义枚举类型新变量

 

C中没有String引用类型,它是用字符数组表示,用‘\0’表字符结束;而C++和java中有String引用类型;

另外,C++中的String对象可以用s[i]进行操作,而Java中则不可以,需要转换为char[]才行;

Java 和C/C++的“语法”上的差异!

标签:

原文地址:http://www.cnblogs.com/zhaojinxin/p/5722728.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!