に掲載されている、とあるインターフェイスに関する問題でよくわからない点があります。
問題文としては
期待された実行結果通りにプログラムが動くように、インターフェースICellPhone、IComputer、IMailerを実装しなさい。
と指示があり
既定のコードにインターフェイスを追加し実装するといった内容です。
そこで例題をもとにインターフェイスを追加したものの実装ができません。
Program.csにて
c#
1static void Main(string[] args) 2 { 3 CellPhone cp = new CellPhone(); 4 FuncCellPhone(cp); 5 FuncMailer(cp); 6 FuncComputer(cp); 7 }
とあるのですが
このFuncがよく意味がわかりません。
冒頭でインスタンス cp を生成し
cp の中でCellPhoneないしMailer、Computerのインターフェイスを実装する
という意味かと今は認識しています。
ちなみにこのままだとProgram.csの
FuncCellPhone(cp)の下線部が青色波線になり
↑は現在のコンテキスト内に存在しません。と表示されます。
ご教授のほど宜しくお願いします。
一応
Program.csとクラスのCellPhone、インスタンスのひとつである
ICellPhoneのソースも追加しています。
c#
1class Program 2 { 3 static void Main(string[] args) 4 { 5 CellPhone cp = new CellPhone(); 6 FuncCellPhone(cp); 7 FuncMailer(cp); 8 FuncComputer(cp); 9 } 10 // 電話としての処理 11 public static void FuncPhone(ICellPhone phone) 12 { 13 phone.CallPhone(); // 電話を掛ける 14 phone.CallPhone(); // 電話を受ける 15 } 16 // メーラーとしての処理 17 public static void FuncMailer(IMailer mailer) 18 { 19 mailer.SendMail(); // メールを送信する 20 mailer.RecieveMail(); // メールを受信する 21 } 22 // コンピューターとしての処理 23 public static void FuncComputer(IComputer computer) 24 { 25 computer.PlayGame(); // ゲームをする 26 computer.BrowseWeb(); // ウェブを閲覧する 27 } 28 } 29
続いてクラス
c#
1 2class CellPhone : ICellPhone, IMailer, IComputer 3 { 4 // メールを送信する 5 public void SendMail() 6 { 7 Console.WriteLine("メールを送る"); 8 } 9 // メールを受信する 10 public void RecieveMail() 11 { 12 Console.WriteLine("メールを受信する"); 13 } 14 // webを閲覧する 15 public void BrowseWeb() 16 { 17 Console.WriteLine("ウェブを閲覧する"); 18 } 19 // ゲームをする 20 public void PlayGame() 21 { 22 Console.WriteLine("ゲームをする"); 23 } 24 // 電話を掛ける 25 public void CallPhone() 26 { 27 Console.WriteLine("電話を掛ける"); 28 } 29 // 電話を受ける 30 public void RecievePhone() 31 { 32 Console.WriteLine("電話を受ける"); 33 } 34 } 35
最後にインターフェイス
c#
1 2interface ICellPhone 3 { 4 // 電話を掛ける 5 void CallPhone(); 6 // 電話を受ける 7 void RecievePhone(); 8 } 9
回答2件
あなたの回答
tips
プレビュー