码迷,mamicode.com
首页 > 其他好文 > 详细

构造器

时间:2016-09-29 22:13:03      阅读:201      评论:0      收藏:0      [点我收藏+]

标签: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

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!