[转载]new带括号与不带括号的区别
2014-10-09 22:04
267 查看
今天在学习JAVA编程时候,在new一个class时,该class名后面带(),所以有此疑问:
public class runnian{.............}
runnian year = new runnian();
自定义类类型:
如果该类没有定义构造函数(由编译器合成默认构造函数)也没有虚函数,那么class c = new class;将不调用合成的默认构造函数,而class c = new class();则会调用默认构造函数。
如果该类没有定义构造函数(由编译器合成默认构造函数)但有虚函数,那么class c = new class;和class c = new class();一样,都会调用默认构造函数。
如果该类定义了默认构造函数,那么class c = new class;和class c = new class();一样,都会调用默认构造函数。
内置类型:
int *a = new int;不会将申请到的int空间初始化,而int *a = new int();则会将申请到的int空间初始化为0。
结论:别使用不带括号的new。
PS:这是VS2008下的结果。
阅读更多
相关文章推荐
- C++中尖括号和引号的区别---转载
- C++中new 一个对象的时候加括号和不加括号的区别
- new 对象加括号和不加括号的区别
- 转载:new和malloc的区别
- C# 中virtual,override,new 的区别与用法(转载)
- spring事务PROPAGATION_REQUIRES_NEW和PROPAGATION_NESTED区别(转载)
- new和malloc的区别[转载]
- php中new对象加括号和不加括号的区别
- new 对象加括号和不加括号的区别
- new 对象加括号和不加括号的区别
- (转载)new和malloc的区别
- C++中尖括号和引号的区别---转载
- Malloc与new的区别(转载)
- new对象时,类名后加括号与不加括号的区别
- php new 对象是否带括号的区别
- new带括号与不带括号的区别
- 转载 关于include尖括号和双引号的区别。
- new对象加括号与不加的区别
- new 对象加括号和不加括号的区别
- new 和 malloc 的区别 (转载)