開発環境
- OS: Windows 10 Pro
- IDE(統合開発環境): Visual Studio Community 2017
初めてのC# 第2版 (Jesse Liberty (著)、Brian MacDonald (著)、日向 俊二 (翻訳)、オライリージャパン)の13章(インターフェース)、13.10(練習問題)、練習13-4.を取り組んでみる。
コード
using System; class Program { static void Main(string[] args) { ProgramHelper ph = new ProgramHelper(); ProgramConverter pc = new ProgramConverter(); Console.WriteLine("ProgramHelper"); Console.WriteLine("is演算子"); if (ph is ICodeChecker) { ICodeChecker codeChecker1 = ph as ICodeChecker; Console.WriteLine(codeChecker1.CodeCheckSyntax("", "")); } Console.WriteLine("as演算子"); ICodeChecker codeChecker = ph as ICodeChecker; if (codeChecker != null) { Console.WriteLine(codeChecker.CodeCheckSyntax("", "")); } Console.WriteLine("ProgramConverter"); Console.WriteLine("is演算子"); if (pc is ICodeChecker) { ICodeChecker codeChecker1 = pc as ICodeChecker; Console.WriteLine(codeChecker1.CodeCheckSyntax("", "")); } Console.WriteLine("as演算子"); ICodeChecker codeChecker2 = pc as ICodeChecker; if (codeChecker2 != null) { Console.WriteLine(codeChecker2.CodeCheckSyntax("", "")); } } } interface IConvertible { string ConvertToCSharp(string s); string ConvertToVB(string s); } interface ICodeChecker: IConvertible { bool CodeCheckSyntax(string s, string lang); } class ProgramConverter : IConvertible { public string ConvertToCSharp(string s) { return "VBの文字列をC#に変換"; } public string ConvertToVB(string s) { return "C#の文字列をVBに変換"; } } class ProgramHelper : ProgramConverter, ICodeChecker { public bool CodeCheckSyntax(string s, string lang) { return true; } }
入出力結果(コマンドプロンプト)
ProgramHelper is演算子 True as演算子 True ProgramConverter is演算子 as演算子 続行するには何かキーを押してください . . .
0 コメント:
コメントを投稿