日期:2014-05-19  浏览次数:20953 次

C#中int是不是也被当成对象?
C#中说把所有都当成对象处理,那么定义int型时为什么不必用int   a   =   new   int();呢

------解决方案--------------------
1、type variable = new type( ... );这个本来就不是必需的,没有谁要求你一定要new什么
2、int variable;如果这样不付给初值,在下文中便使用的话,一样会出错。

------解决方案--------------------
int和Int32是完全等价的。
之所以有int这个关键字,是为了让你少打一点代码。

如果每次都这样定义一个基础变量,你受得了吗??
Int32 a=new Int32();
但这样定义确实编译器真正做的,而且和int a=0产生的IL代码是一样的。



------解决方案--------------------
是对象,所以你可以用int加个.就可以点出他的方法。当时在java里这个是无法点出来的,因为java中的int仍然是数据类型,值类型的。