C#基礎:陣列(物件陣列)
阿新 • • 發佈:2018-12-26
陣列實現位System.Array類的例項,實現了IList,ICollection,IEnumerable介面,陣列一旦建立大小固定,不能新增,刪除元素。
- public abstract class Animal//父類,抽象類
- {
- private string name;
- public string Name
- {
- set { this.name = value; }
- get { return this.name; }
- }
- public Animal() {
- this.name = "the animal no name";
- }
- public Animal(string name) {
- this.name = name;
- }
- public void Feed() => Console.WriteLine($"{name} has been fed");
- }
- //子類繼承自Animal
- class Chicken:Animal
- {
- public Chicken(string name) : base(name) { }
- public void LayEgg() => Console.WriteLine($"{Name} has been Lay an Egg");
- }
- //子類繼承自Animal
- class Cow:Animal
- {
- public Cow(string name) : base(name) { }
- public void Milk() => Console.WriteLine($"{Name}has been Milked");
- }
- static void Main(string[] args){
- Animal[] animalArray = new Animal[2];//定義陣列,長度為2
- Cow myCow1 = new Cow("Lea");
- animalArray[0] = myCow1;//給陣列賦值
- animalArray[1] = new Chicken("Noa");
- foreach (Animal myAnimal in animalArray)//foreach迴圈輸出陣列內容
- {
- Console.WriteLine($"New{myAnimal.ToString()}" + $" Name={myAnimal.Name}");
- }
- Console.WriteLine(animalArray.Length);//陣列的長度
- //多型
- (animalArray[0]).Feed();
- ((Chicken)animalArray[1]).LayEgg();
- }