2018年9月23日日曜日

開発環境

初めてのC# 第2版 (Jesse Liberty (著)、Brian MacDonald (著)日向 俊二 (翻訳)、オライリージャパン)の11章(継承とポリモーフィズム)、11.9(練習問題)、問題11-3.を取り組んでみる。

コード

using System;

namespace Sample
{
    class Program
    {
        public abstract class Telephone
        {
            protected string phonetype;

            public abstract void Ring();
        }
        public class DigitalPhone: Telephone
        {
            public DigitalPhone()
            {
                this.phonetype = "Digital";
            }

            public override void Ring()
            {
                Console.WriteLine("DigitalPhone: {0}", phonetype);
            }
        }
        public class TalkingPhone: Telephone
        {
            public TalkingPhone()
            {
                this.phonetype = "Talking";
            }
            public override void Ring()
            {
                Console.WriteLine("TalkingPhone: {0}", phonetype);
            }
        }
        static void Main(string[] args)
        {
            DigitalPhone digitalPhone = new DigitalPhone();
            TalkingPhone talkingPhone = new TalkingPhone();
            Telephone[] telephones = { digitalPhone, talkingPhone };

            foreach (var item in telephones)
            {
                item.Ring();
            }
        }
    }
}

入出力結果(コマンドプロンプト)

DigitalPhone: Digital
TalkingPhone: Talking

Press any key to continue...

0 コメント:

コメントを投稿