实体类问题

来源:百度知道 编辑:UC知道 时间:2024/06/05 05:39:57
假设有一个实体类public class User{.......}
User user= new User();和User user;同等吗?

User user= new User();
相当于
User user;
user= new User();
两句。

第一句是定义一个变量user,其类型为User。
所以要分清楚变量与类型了。

第二句是初始化变量 user,即调用类型User的构造函数去构造 user。

User user;这种写法比较灵活
比如需要有参数传入的时候public string User(string value , string value)
{
......
}
这个时候使用 User user = new User();每次都要重新去初始化
而使用User user好处就在于 只要在开头写上 User user;
在后面随时都可以调用 user = new User("第一个参数","第二个参数");
这样从省代码的角度来看也可以省不少代码 也是非常方便和灵活 。。。

User user= new User();这个已经实例化了
User user;这个还没有实例化,
举个例子比如说User 是玩具类,那么第1个user是已经生产出来了,第2个是还没生产呢。。
还有要明确一点啊。。。。我知道user不是玩具的意思不过是打个比方。。。。

当然不同了,User是类名,user是实例,C语言认为大小写是不一样的.

User user这个时候user是null。
User user= new User()是调用了默认的构造函数,user不为null