C#构造方法重载

1、什么是构造方法?

首先,它是一个方法,它是类中 众多方法中的一个。其次,它具有类中其他方法所不具备的一些特性。

在类执行开始的时候,执行这个方法。

2、构造方法相对其他方法有哪些不同?

方法名:类中普通的方法可以根据代码书写者的个人喜好任意取名。但是,构造方法不可以。构造方法的名字必须与类名相同。换句话说,当类中的一个方法名与类名相同时,C#即认为此方法为类的构造方法。

执行顺序:类中的普通方法是在类实例化之后被调用执行的,而构造方法则是在类实例化之前执行的。

Circle圆类

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks; namespace over
{
class Circle
{
public int r; public Circle()//不带参数的构造方法,为默认构造方法
{
Console.WriteLine("Circle类的构造方法被调用");
r = 10;
} public Circle(int rid)
{
Console.WriteLine("Circle类中重载了的构造方法被调用");
r = rid;
} public double s()
{
return Math.PI * r * r;
}
}
}

  

  在没有添加构造方法的时候,默认类中会为我们添加一个不带参数,名字和类名相同的方法,这个方法被称为构造方法,构造方法无需添加void ,int等关键字,直接public+方法名()

  Program类

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks; namespace over
{ class Program
{
static void Main(string[] args)
{
Program p = new Program();
p.run(); } void run()
{
Circle c;
c = new Circle();
// c = new Circle(20);// 传递参数20到circle类中,调用重载了的带int rid参数的构造方法 double area = c.s();
Console.WriteLine(area); Console.ReadKey(); } } }

  

实例化一个Circle属性的c,

 Circle c = new Circle();
在不传值的情况下,默认掉用的是不带参数的构造方法,定义了r=10;

C#构造方法重载

在执行

c = new Circle(20);
传递参数20,调用的是重载的public Circle(int rid)构造方法,这是r=20;

C#构造方法重载

上一篇:koa通过get请求获取参数


下一篇:Python安装MySQLdb并连接MySQL数据库