标题:请问实例化一个类的时候,先创建变量还是先执行构造函数?
取消只看楼主
gromentt
Rank: 1
等 级:新手上路
帖 子:16
专家分:0
注 册:2009-9-20
结帖率:100%
 问题点数:0 回复次数:1 
请问实例化一个类的时候,先创建变量还是先执行构造函数?
初学,看到一个类定义如下:
class point
{

    private int point_x;
    private int point_y;
   
    public int x    {
        get { return point_x; }
        set { if (value < 0)
                point_x = 0;
            else
                point_x = value;        }
    }
    public int y    {
        get { return point_y; }
        set { if (value < 0)
                point_y = 0;
            else
                point_y = value;        }
    }

    public point()
    {
        x = 0;
        y = 0;
    }
}
有一点不太明白,书上都是说实例化一个类的时候,首先会执行构造函数,这样就直接给x和y赋值了。但是照理说这时候x和y两个变量都还没有声明,都还不存在,这样赋值岂不出错?
或者还是说实例化的时候会把类定义里的所有数据成员都先声明好,然后再来执行构造函数?
迷惑中,望赐教!!
搜索更多相关主题的帖子: 构造 函数 实例 变量 
2010-02-03 22:40
gromentt
Rank: 1
等 级:新手上路
帖 子:16
专家分:0
注 册:2009-9-20
得分:0 
以下是引用happy886在2010-2-4 09:58:04的发言:

也当然 可以       先来一个的空的构造函数

public point()
    {
    }
实例一个对像时  先来一个

point myPoint=new point();
myPoint.x=xxxxx;
myPoint.y=yyyy;
。。。然后  执行相应的方法

为什么要用空的构造函数呢?这和不写构造函数也一样了吧?

30岁的初学者。
2010-02-04 10:44



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-297196-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.114914 second(s), 8 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved