设计模式之面向对象基础(二)

2014-11-24 02:45:31 · 作者: · 浏览: 4
t.Shout()); } class Cat : Animal { public Cat() : base() { } public Cat(string name) : base(name) { } public override string Shout() { string result = ""; for (int i = 0; i < shoutNum; i++) result += "喵"; return "我的名字叫" + name + " " + result; } } private void button2_Click(object sender, EventArgs e) { Dog dog = new Dog("dandan"); dog.ShoutNum = 5; MessageBox.Show(dog.Shout()); } class Dog : Animal { public Dog() : base() { } public Dog(string name) : base(name) { } public override string Shout() { string result = ""; for (int i = 0; i < shoutNum; i++) result += "汪"; return "我的名字叫" + name + " " + result; } } private void Form1_Load(object sender, EventArgs e) { } private Animal[] arrayAnimal;//动物数组 //动物报名 private void button3_Click(object sender, EventArgs e) { arrayAnimal = new Animal[2]; arrayAnimal[0] = new Cat("小花"); arrayAnimal [1]=new Dog ("丹丹") } private void button4_Click(object sender, EventArgs e) { foreach (Animal item in arrayAnimal )//遍历数组,让猫狗都Shout() { MessageBox.Show(item.Shout()); } } } } 对这三大特性的理解还有待实践提高,希望大家给予指导!