Head First C#
頭とからだで覚えるC#の基本
(オライリージャパン)
Andrew Stellman (著), Jennifer Green (著)
佐藤 嘉一 (監修), 木下 哲也 (翻訳)
開発環境
- Microsoft Windows 8.1 Pro (VMware Fusion 6, OS X Mavericks - Apple) (OS)
- C# (プログラミング言語)
- Microsoft Visual Studio Express 2013 for Windows Desktop (統合開発環境, IDE)
Head First C#―頭とからだで覚えるC#の基本 (Andrew Stellman (著)、Jennifer Green (著)、佐藤 嘉一 (監修)、木下 哲也 (翻訳)、オライリージャパン)の5章(継承: オブジェクトの系図)、エクササイズ(p.198)を解いてみる。
エクササイズ(p.198)
コード
Program.cs
using System; namespace WindowsFormsApplication1 { static class Program { /// <summary> /// アプリケーションのメイン エントリ ポイントです。 /// </summary> [STAThread] static void Main() { A a = new A(); B b = new B(); C c = new C(); A a2 = new C(); string q = ""; // 出力の2行目 q += b.m1(); q += c.m2(); q += a.m3(); q += "\n"; // 出力の4行目 q += c.m1(); q += c.m2(); q += c.m3(); q += "\n"; // 出力の7行目 q += a.m1(); q += b.m2(); q += c.m3(); q += "\n"; // 出力の4行目 q += a2.m1(); q += a2.m2(); q += a2.m3(); System.Windows.Forms.MessageBox.Show(q); } } class A { public int ivar = 7; public virtual string m1() { return "Aのm1, "; } public string m2() { return "Aのm2, "; } public virtual string m3() { return "Aのm3, "; } } class B : A { public override string m1() { return "Bのm1, "; } } class C : B { public override string m3() { return "Cのm3, " + (ivar + 6); } } }
0 コメント:
コメントを投稿