c#中无参构造函数可以直接用类中的字段吗

c#中无参构造函数可以直接用类中的字段吗

第1个回答  2016-04-26
可以的,只要是类中的成员,在构造方法中都可以使用的。
1)关于构造方法总结:
a、构造方法用来创建对象,并且可以在构造函数中对对象进行初始化,是最先调用的方法。
b、构造方法是用来创建对象的特殊方法,方法名和类名一样,没有返回值,也可以省略void不写。
c、构造函数可以有参数,new对象的时候传递函数参数即可。
d、如果不指定构造函数,则类有一个默认的无参构造函数;如果指定了构造函数,则不再有默认的无参构造函数,如果需要无参构造函数,则需要自己来写。
e、构造函数可以重载,也就是有多个参数不同的构造函数。
注:当我们定义好一个类之后,如果我们没有写构造方法,那么系统会自动给我们加上一个默认的没有参数的构造方法。在这个构造方法中什么也不做,我们也看不到。当我们自定义一个构造方法后,系统原先默认给我们添加的那个无参的构造方法就不会再为我们添加了。构造方法进行传,来对变量进行初始化。

2)使用构造方法的好处:
a、对多个属性进行赋值,不需要重复的写实例名;
b、可以保证用户在new一个对象的时候必须对某一个属性进行赋值

3) 调用构造方法的问题:
构造方法只能通过以下方式被调用:
a、当前类的其他构造方法通过this语句调用它。
b、当前类的子类的构造方法通过super语句调用它。
c、在程序中通过new语句调用它。

4)思考:方法如何定义及定义后如何调用?
public class A
{ public int GetInt()
{
} //在A类中定义个方法

public class B
{ A a =new A(); //实例化A的对象
a.GetInt(); //在B类中调用A类的方法

如果是静态的方法就不需要实例化 直接调用
public class A{ public static int GetInt(){} //在A类中定义个方法}
public class B{ A.GetInt(); //在B类中调用A类的方法}
相似回答