对象的引用

来源:互联网 发布:贵阳华唐大数据招聘 编辑:程序博客网 时间:2024/06/03 14:05
namespace 对象的引用{    class Person//所有类都是object的子类。这里的person也是object的子类    {        public Person(int age, string name)//构造函数        {            this.Age = age;            this.Name = name;        }        public Person()//空构造函数        {        }        public int Age        {            get;            set;        }        public string Name        {            set;            get;        }        public virtual void SayHello()        {            Console.WriteLine("我的年龄是{0},我的姓名是{1}", Age, Name);        }        public override string ToString()        {            return "Name=" + Name + ":Age=" + Age;        }    }    class Chinese : Person//chinese类是从person类继承的    {        public string HuKou { set; get; }//属性        public void KongHu()//方法        {            Console.WriteLine("使用双节棍");        }        public override void SayHello()        {            Console.WriteLine("小生虚度光阴{0}载",Age);            //base.SayHello();        }    }    class BeiJingRen : Chinese    {    }    class Korea : Person    {        public Korea(int age, string name)//子类调用父类的构造函数方法            : base(age, name)        {        }        public override void SayHello()        {            Console.WriteLine("思密达:{0}", Name);        }        public void Paocai()        {        }    }    class Program    {        static void Main(string[] args)        {            /*            int i1 = 10;            int i2 = i1;            Console.WriteLine("i1={0},i2={1}",i1,i2);            i1++;            Console.WriteLine("i1={0},i2={1}",i1,i2);            */                       /*            Chinese c1 = new Chinese();            c1.Age = 25;            Chinese c2 = c1;            Console.WriteLine("c1.Age={0},c2.Age={1}",c1.Age,c2.Age);            c1.Age++;            Console.WriteLine("c1.Age={0},c2.Age={1}",c1.Age,c2.Age);            */                        /*Chinese c1 = new Chinese();//new出来的才算是对象 这里只有c1和c3是对象            c1.Age = 25;            Chinese c2 = c1;            Console.WriteLine("c2.Age={0}",c2.Age);            Chinese c3 = new Chinese();            c3.Age = 50;            c2 = c3;            Console.WriteLine("c3.Age={0}", c3.Age);*/                               Chinese c1 = new Chinese();            c1.Age = 25;            Console.WriteLine("c1.Age={0}",c1.Age);            IntAge(c1);            Console.WriteLine("c1.Age={0}",c1.Age);           Console.ReadKey();                    }        static void IntAge(Chinese c)        {            c.Age++;        }    }}
主程序里的每一段程序单独运行 从结果中看出区别;