1.用this来写:
class Program
{
static void Main(string[] args)
{
Student stu1 = new Student(1, "WangMing");
stu1.ID = 2;
stu1.Name = "ZhangXi";
stu1.report();
Console.ReadLine();
}
}
class Student
{
public int ID;
public string Name;
public Student(int id,string name)
{
this.ID = id;
this.Name = name;
}
public void report()
{
Console.WriteLine($"I'm a Student,my number is {ID},and my name is {Name}");
}
}
输出为:I’m a Student,my number is 2,and my name is ZhangXi
2.加入get,set来写:
class Program
{
static void Main(string[] args)
{
Student stu1 = new Student();
stu1.ID = 2;
stu1.Name = "ZhangXi";
stu1.report();
Console.ReadLine();
}
}
class Student
{
public int ID { get; set; }
public string Name { get; set; }
public void report()
{
Console.WriteLine($"I'm a Student,my number is {ID},and my name is {Name}");
}
}
输出结果同上
***注意:***这个是可以自动初始化的,假若我不给ID和Name的值,那么输出结果为:
I’m a Student,my number is 0,and my name is
3.加入静态属性和析构器:
class Program
{
static void Main(string[] args)
{
Student stu1 = new Student(1,"WangQi");
Student stu2 = new Student(2, "zhangqi");
stu1.report();
stu2.report();
Console.WriteLine(Student .Amount);
Console.ReadLine();
}
}
class Student
{
public static int Amount { get; set; }
static Student()
{
Amount = 0;
}
public int ID;
public string Name;
public Student(int id, string name)
{
this.ID = id;
this.Name = name;
Amount++;
}
~Student()
{
Console.WriteLine("Release");
Amount--;
}
public void report()
{
Console.WriteLine($"I'm a Student,my number is {ID},and my name is {Name}");
}
}
输出为:
I’m a Student,my number is 1,and my name is WangQi
I’m a Student,my number is 2,and my name is zhangqi
2