3 オブジェクト指向プログラミングとは
今度はintroduce関数の出力内容に、先生の時だけ担当教科を加わえてみましょう。
処理自体はそれほど難しくないのですが、実現方法には、オブジェクト指向的なやり方とあまりオブジェクト指向ではないやり方の2通りがあります。
3.1 if文を使った自己紹介
まずは、あまりオブジェクト指向的でない方からやってみましょう。その場合、次のようなifを使った条件分岐文が利用できます。
func introduce(person:Person)
{
・・・
println(" 趣味は\(person.hobby)です。")
if person is Teacher {
println(" 教師です。")
}
println()
}
ここで使っている条件式は、isキーワードで、引数personの型が実際にはTeacherクラス型であるかどうかの真偽値を得ています。isキーワードにより条件式は、引数personのクラスが、実際にはTeacherクラスであればtrueとなります。今回なら引数で受け取ったpersonがTeacherクラスの時だけprintln(" 教師です")が実行されるわけです。
この記事は会員限定です。会員登録をすると続きをお読みいただけます。
ログイン / 新規登録