c#关于数组和多态的简单使用

来源:互联网 发布:一线城市 知乎 编辑:程序博客网 时间:2024/06/10 21:17
1 数组的话可以用ArrayList,很好用,与Array不同的是,数组的大小可以随意改变,像是动态的数组,Add等方法什么的,可以直接用,然后foreach配合方便访问。
具体使用:可以先不定义类型,拆包的时候再进行判断。
ArrayList P=new ArrayList();      //定义P数组
P.Add(num);   //调用Add方法
就这样。

2 foreach使用也比较简单,具体使用看实例:

ArrayList P = new ArrayList();   //定义数组

Pupil p = new Pupil(textBox1.Text, textBox2.Text, textBox3.Text, textBox4.Text);  //使用          
P.Add(p);    //调用数组方法,进行装包

 foreach (Pupil a in P)   //数组元素的访问(拆包)
            {
                label5.Text += "\n" + a.Show();
            }


3 注意要先引用using System.Collections;才可以使用数组


4 接下来是多态与类的继承
然后构造函数的继承,:base(name,age)
方法的继承,base.show();复写override,虚方法virtual
具体在实验中:

 public class Student    //基类
    {
        protected string name;
        protected string age;
        protected string school;
        protected string grade;
        int studentnum=0;
        public Student(string name, string school, string age, string grade)   //构造函数
        {
            this.name = name;
            this.school = school;
            this.age = age;
            this.grade = grade;
        }
        public virtual string Show()   //虚方法
        {
            return string.Format("我的名字是{0},我来自{1},年龄是{2},我的成绩是{3}", name,school,age,grade);
        }
        public virtual int  Studentnum(){
            return studentnum;
        }
    }
    public class Pupil:Student               //派生类的继承
    {
        public Pupil(string name,string age,string school,string grade) : base(grade,-,-,-) { } //构造函数的继承
        public override string Show()       //方法的复写
        {
            return base.Show()+"  我是小学生\n";     //基类方法内容的部分继承
        }
    }
  

第一篇博客,完全自娱自乐,肯定有许多问题,但是也是希望能够帮助有问题的人,如有大神出没,也请多多指教。
1 0