测试

class Animal
    {
        public virtual void shout()
        {
            Console.WriteLine("动物叫!");
        }
    }
    class Dog : Animal
    {
        public override void shout()
        {
            base.shout();
            Console.WriteLine("汪汪......");
        }
    }
    class Program
    {
        static void Main(string[] args)
        {
            Animal animal = new Dog();
            animal.shout();
            Console.ReadKey();
        }
    }

编写程序,请按照以下要求设计一个学生类Student,并进行测试。

(1)Student类中包含姓名、性别、学号三个字段。
(2)定义类的索引器。
(3)在Main()方法中创建一个Student对象,用索引方式为三个字段赋值然后输出。

class Student
     {
         private string name;
         private string sex;
         private string no;
         public string this[int index]
         {
             get
             {
                 switch (index)
                 {
                     case 0: return name; 
                         break;
                     case 1: return sex; 
                         break;


                     case 2: return no;
                         break;
                     default: throw new ArgumentOutOfRangeException("index"); 
                         break;
                 }
             }
             set
             {
                 switch (index)
                 {
                     case 0: name = value; break;
                     case 1: sex = value; break;
                     case 2: no = value; break;
                     default: throw new ArgumentOutOfRangeException("index"); break;
                 }
             }
         }
         public void Say()
         {
             Console.WriteLine("wojiao" + this[0] + "woshi" + this[1] + "sheng,wodexuehaoshi:" + this[2]);
         }
     }
     class Program
     {
         static void Main(string[] args)
         {
             Student stu = new Student();
             stu[0] = "zhangkun";
             stu[1] = "nan";
             stu[2] = "2020075092";
             stu.Say();
             Console.ReadKey();
         }

     }


请编写程序,要求如下:

(1)创建Person类,包含name,no字段,构造方法,Show方法(显示字段内容)。
(2)创建派生类Student,Teacher类。Student类包含Score字段,构造方法,重写Show方法。Teacher类包含Salary字段,构造方法,重写Show方法。
(3)在Main()方法中用多态创建一个Student对象一个Teacher对象。调用Show方法显示字段内容。

class Person
    {
        private string name;
        private string no;
        public Person(string name, string no)
        {
            this.name = name;
            this.no = no;
        }
        public virtual void Show()
        {
            Console.Write("name={0},no={1}", name, no);
        }
    }
    class Student : Person
    {
        private int score;
        public Student(string name, string no, int score)
            : base(name, no)
        {
            this.score = score;
        }
        public override void Show()
        {
            base.Show();
            Console.WriteLine("wodechengji:" + score);
        }
    }
    class Teacheer : Person
    {
        private int salary;
        public Teacheer(string name, string no, int salary)
            : base(name, no)
        {
            this.salary = salary;
        }
        public override void Show()
        {
            base.Show();
            Console.WriteLine("wodechenngji:" + salary);
        }

    }
    class Program
    {
        static void Main(string[] args)
        {
            Person p = new Student("zhangkun", "2020075092", 90);
            p.Show();
            p = new Teacheer("lili", "2020075048", 500);
            p.Show();
            Console.ReadKey();
        }
    }
posted on 2021-04-21 11:31  羲和i  阅读(122)  评论(0)    收藏  举报