欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

C#属性方法 构造函数(不知道自己理解的对不对)

程序员文章站 2023-11-18 13:10:04
using System; namespace test { class Program { static void Main(string[] args) { Cat kitty = new Cat(); // 无参构造函数 Cat1 KITTY = new Cat1("KITTY", 4); C ......
using system;

namespace test
{
    class program
    {
        static void main(string[] args)
        {
            cat kitty = new cat(); // 无参构造函数
            cat1 kitty = new cat1("kitty", 4);
            cat1 kitty1 = new cat1();
            /*kitty.setage(-3);访问器操作
            kitty.name = "kitty";
            console.writeline("大家好,我叫{0},今年{1}岁了",kitty.name,kitty.getage());*/
            kitty.name = "kitty";
            kitty.age = 3;
            console.writeline("大家好,我叫{0},今年{1}岁了", kitty.name, kitty.age);//无参构造函数,age用了属性方法
            console.writeline("大家好,我叫{0},今年{1}岁了", kitty.na, kitty.ag);//有参构造函数
            console.writeline("大家好,我叫{0},今年{1}岁了", kitty1.na, kitty1.ag);//无参构造函数
            kitty.catchmouse();
            kitty.catchmouse();
        }
    }
    class cat
    {
        public string name;//字段
        private int age;

        private int no = 0;//私有的
                           /* public void setage(int age)//与下面getage合起来叫做访问器
                            {
                                if (age < 0)
                                {
                                    age = 0;
                                }
                                else
                                {
                                    age = age;
                                }
                            }
                            public int getage()
                            {
                                return age;
                            }与上面setage合起来叫做访问器,java用的比较多*/

        //c#里的属性方法
        public int age
        {
            set
            {
                if (value < 0)
                {
                    age = 0;
                }
                else
                {
                    age = value;
                }
            }
            get { return age; }

        }
        private void hello()//方法  介绍自己
        {
            console.writeline("你们好啊,我是{0}.", name);
        }
        public void call()//叫声
        {
            hello();
            console.writeline("喵喵。。。。");
        }
        public void catchmouse()//行为
        {
            this.no++;
            console.writeline("我抓了{0}只老鼠.", no);

        }
    }
    class cat1
    {
        private string name1;
        private int age1;

        public cat1()//显示说明构造函数
        {

        }
        /// <summary>
        /// 弄成和类名一样的有参构造函数
        /// </summary>
        /// <param name="namevalue"></param>
        /// <param name="agevalue"></param>
        public cat1(string name1value, int age1value)
        {
            name1 = name1value;
            age1 = age1value;
        }
        public string na
        {
            set { name1 = value; }
            get { return name1; }
        }
        public int ag
        {
            set { age1 = value; }
            get { return age1; }
        }
    }
}

C#属性方法  构造函数(不知道自己理解的对不对)