作用:对类中的字段成员(数据、变量)进行初始化(赋值)。
特性:1.构造方法的名字必须与定义他的类名完全相同,没有返回类型,不需要return。
5.类中没有显式定义构造方法时,编译器会自动添加默认构造方法(默认构造方法:不带任何参数,且初始值为0)。如果定义了构造方法(无论是不带参数的默认构造方法,还是带参数的构造方法),编译器都不会再自动添加默认构造方法。
6.构造方法可以被重载(方法重载的定义)。
class Circle
{
private int radius;
//定义一个字段能够计算圆的实例化个数
public static int count;
//不带任何参数的构造方法称之为默认构造方法,含义是:如果该方法没有显示定义,系统会自动添加这个方法。
//如果类中已经定义了构造方法(无论是默认还是构造方法,还是带参数的构造方法),系统都不会再提供默认构造方法。
public Circle()
{
radius = 10;
count++;
}
public Circle(int initialRadius)
{
radius = initialRadius;
count++;
}
public double Area()
{
return Math.PI * radius * radius;
}
}
class Program
{
static void Main(string[] args)
{
Circle c;
Console.WriteLine("Circle类被实例化之前");
c = new Circle();//构造方法在此调用,调用的是不带参数的构造方法
Circle c2 = new Circle(20);//Circle(int),不再理会其它的构造方法
Console.WriteLine("Circle类被实例化之后");
double area = c.Area();
Console.WriteLine(area);
Console.WriteLine("圆形的个数"+Circle.count);
}
}