4
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

はじめに

C#で抽象クラスを使った例を実装しました。

クラス

抽象クラスを魚クラスとし、さんまクラスカツオクラス を作りました。

実装したソースコード

実装したソースコードです。

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
 
namespace Fish1{
    //  抽象クラス動物
    abstract class Fish
    {
        //  名前
        protected string name = "";
        //  泳ぐ
        public abstract void Swim();
        //  名前を表示する
        public void ShowName()
        {
            Console.WriteLine("名前:{0}", name);
        }
        public Fish()
        {

        }
        public Fish(string name)
        {
            this.name = name;
        }
        public string Name
        {
            get { return name;}
            set { name = value;}
        }

    }


    //  さんまクラス
    class Pike : Fish
    {
        public Pike()
        {
            name = "さんま";
        }
        //  泳ぐ
        public override void Swim()
        {
            Console.WriteLine("さんまが泳ぐ");
        }
        
    }
    
    //  さんまクラス
    class Bonito : Fish
    {
        public Bonito()
        {
            name = "カツオ";
        }
        //  泳ぐ
        public override void Swim()
        {
            Console.WriteLine("カツオが泳ぐ");
        }
        public Bonito(string name)
        {
            this.name = name;
            
        }
        
        
    }


    class Program
    {
        static void Main(string[] args)
        {
            //  Fishクラスのオブジェクトの配列を生成
            Fish[] fishes = new Fish[2];
            fishes[0] = new Pike();     //  さんまクラスのインスタンス生成
            fishes[1] = new Bonito();   //  カツオクラスのインスタンス生成   
            
            for (int i = 0; i < fishes.Length; i++)
            {
                fishes[i].ShowName();
                fishes[i].Swim();
                Console.WriteLine("------------");
            }
            //  Fishクラスのオブジェクトの配列を生成
            
            Fish[] fishes1 = new Fish[1];
            fishes1[0] = new Bonito("カツオ");     // カツオクラスのインスタンス生成
            
            for (int i = 0; i < fishes1.Length; i++)
            {
                fishes1[i].ShowName();
                fishes1[i].Swim();
                Console.WriteLine("------------");
            }
        }
    }
}

最後に

改造する予定です

4
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?