标签:c# 、构造器
namespace 构造器 { class Program { static void Main(string[] args) { People p1 = new People(1, "张三");//调用构造器的语法(People是一个类,p1是一个对象) p1.Id = 1; p1.Name = "zhangsan"; p1.Sleep(); p1.Eat(); People p2 = new People(); p2.Id = 2; p2.Name = "lisi"; p2.Sleep(); p2.Eat(); Teacher t1 = new Teacher("王老师", 20160721, 5000); t1.Eat(); } } public class People { public int Id { get; set; } public string Name { get; set; } //每个类都有构造器,用来产生对象,还可以对属性进行赋值操作 //构造器,类似于方法,但是没有返回值类型,跟类名一样 //系统会提供一个默认的无参构造器 //对一个类,自己不创建构造器的话系统就会提供,自己创建了一个的话系统就不会再提供构造器 public People(int Id, string name)//括号中没有东西的话就是无参构造器 { //Id = Id;//错误 this.Id = Id; //访问当前对象的成员,解决形参(局部变量)和属性(成员变量)重名的问题 Name = name; Console.WriteLine("有参构造器被调用"); } //这个无参构造器不可以不写,因为上面自己创建了一个People p1的有参构造器,所以系统不在提供构造器给Peope //p2 public People()//无参构造器 { Console.WriteLine("无参构造器被调用"); } //构造器的重载 //在同一个类里面,名称都一样,参数不一样 //参数不一样:个数、类型、顺序(类型的顺序) //下面两个是一个构造器 //public People(int a,int b) //{ //} //public People(int b, int a) //{ //} public void Eat() { Console.WriteLine(Name + "在吃饭"); } public void Sleep() { Console.WriteLine(Name + "在睡觉"); } } public class Teacher { public string Name { get; set; } public int Id { get; set; } public double Salary { get; set; } public Teacher(string a, int b, double c) { Name = a; Id = b; Salary = c; } public void Eat() { Console.WriteLine(Name + Id + Salary); } } }
标签:c# 、构造器
原文地址:http://745559847.blog.51cto.com/11658719/1857848