/** * ドメイン非依存URL出力フィルタ * javadrill.tech移行時はwp_options.home/siteurlのみ変更すればよい * * データベースには絶対URL(https://minner.asia)を保持し、 * 表示時に現在のドメイン(home_url())に動的変換する */ function javadrill_make_urls_dynamic($content) { if (empty($content)) { return $content; } // データベース内の絶対URLを現在のhome_url()に置換 $old_url = 'https://minner.asia'; $new_url = untrailingslashit(home_url()); // http版も対応(念のため) $content = str_replace($old_url, $new_url, $content); $content = str_replace('http://minner.asia', $new_url, $content); return $content; } // 投稿本文、ウィジェット、タームの説明、抜粋に適用 add_filter('the_content', 'javadrill_make_urls_dynamic', 20); add_filter('widget_text', 'javadrill_make_urls_dynamic', 20); add_filter('term_description', 'javadrill_make_urls_dynamic', 20); add_filter('get_the_excerpt', 'javadrill_make_urls_dynamic', 20); 018 オブジェクト指向の深化(ポリモーフィズムの応用) 008 問題 | Javaドリル

018 オブジェクト指向の深化(ポリモーフィズムの応用) 008 問題

018-008 018 オブジェクト指向の深化

問題

抽象クラス Animal があり、それを継承した Dog と Cat クラスがあります。
Animal クラスには makeSound メソッドがあり、各サブクラスはこのメソッドをオーバーライドして鳴き声を返します。
main メソッドで、異なる動物の鳴き声を表示するプログラムを作成してください。

ヒント

  1. Animal クラスの作成:
    • Animal クラスを抽象クラスとして定義します。
    • makeSound メソッドを抽象メソッドとして宣言します。
  2. Dog クラスの作成:
    • Dog クラスを作成し、Animal クラスを継承します。
    • makeSound メソッドをオーバーライドして、犬の鳴き声を返します。
  3. Cat クラスの作成:
    • Cat クラスを作成し、Animal クラスを継承します。
    • makeSound メソッドをオーバーライドして、猫の鳴き声を返します。
  4. Main メソッドの作成:
    • main メソッドを作成し、異なる動物のインスタンスを生成します。
    • それぞれのインスタンスの makeSound メソッドを呼び出して、動物の鳴き声を表示します。

これらの手順に従ってプログラムを組み立ててみてください。各クラスでのメソッドのオーバーライドと、main メソッドでの適切なオブジェクトの生成とメソッドの呼び出しに注目してください。

→解答例

🎯 実習で理解を深めよう

この内容についてJavaDrillで実際に手を動かして学習できます

コメント

タイトルとURLをコピーしました