1)我如果在类中不显示定义构造函数,是不是有默认的构造函数 ,
2)如果在一个类中,我定义了两个构造函数,其中以个用static,另一个用public声明,哪么在声明对象时,要调用那个呢》
还是说有什么区别和联系,麻烦举例说明,刚刚起步?不知道的太多了。总是感觉自己知识不够。
2)如果在一个类中,我定义了两个构造函数,其中以个用static,另一个用public声明,哪么在声明对象时,要调用那个呢》
还是说有什么区别和联系,麻烦举例说明,刚刚起步?不知道的太多了。总是感觉自己知识不够。
另一个你用public声明的叫'实例构造函数',该函数在构造每个实例都会被调用。 class A
{
static A()
{
Console.WriteLine("A type created.");
}
public A()
{
Console.WriteLine("An A created.");
}
}
class Program
{
static void Main(string[] args)
{
A a1 = new A(); // A type created. An A created."
A a2 = new A(); // An A created.
A a3 = new A(); // An A created.
A a4 = new A(); // An A created.
}
}
这句话说的不是很好,除非你的字段是static
如果类中有一个static字段,则这个类所有的对象都可以对其更改
不是static字段,每个对象各自控制自己的字段
2)先调用类型构造函数,也就是STATIC那个,然后实例构造函数
如:
class zzz
{
public static void Main()
{
System.Console.WriteLine("hi");
new zzz();
}
zzz()
{
System.Console.WriteLine("bye");
}
static zzz()
{
System.Console.WriteLine("byes");
}
}
输出:
byes
hi
bye
答:是的,有一个不带任何参数的构造函数,构造函数里什么页不做。
2)如果在一个类中,我定义了两个构造函数,其中以个用static,另一个用public声明,哪么在声明对象时,要调用那个呢》
还是说有什么区别和联系,麻烦举例说明,刚刚起步?不知道的太多了。总是感觉自己知识不够。
答:static的构造函数用于初始化静态成员变量。静态的构造函数不允许有任何的修饰符。你通过new来实例化一个实例的时候,调用的是非静态的构造函数。
static的那个叫'类型构造函数',对同一种类型,该函数只在第一次用到该类型的时候被调用。
另一个你用public声明的叫'实例构造函数',该函数在构造每个实例都会被调用。
答:是的,在自己没有定义任何构造函数时,系统 会有一个默认的构造函数.
2)如果在一个类中,我定义了两个构造函数,其中以个用static,另一个用public声明,哪么在声明对象时,要调用那个呢》
还是说有什么区别和联系,麻烦举例说明,刚刚起步?不知道的太多了。总是感觉自己知识不够。
答:static的构造函数是静态构造函数,在程序第一次程序加载或运行时,即调用静态构造函数,而且是只调用一次;
publi声明的构造函数是用来实例化对象的时候调用的,没定义一个该类的对象就调用一次.
至于例子,可以看8楼的例子.