/** * ドメイン非依存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); 009 メンバへのアクセス制御 (private修飾子)002 問題 | Javaドリル

009 メンバへのアクセス制御 (private修飾子)002 問題

009-002 009 メンバへのアクセス制御

問題

以下のクラス BankAccount があります。このクラスは、銀行口座の残高を管理します。

public class BankAccount {
    private double balance;

    // コンストラクタやメソッドなどがここに続く...

    // 問題: balanceフィールドへのアクセスを制御し、外部から直接変更できないようにしてください。
    // 同時に、balanceが負の値にならないように制御を追加してください。
}

balance フィールドへの外部からのアクセスを適切に制御し、同時に口座残高が負の値にならないようにするための手段を追加してください。

ヒント

  1. private フィールドの導入:
    • balance フィールドを private に設定します。
  2. ゲッターとセッターの導入:
  3. セッター内での制御:
    • セッターメソッド内で外部から与えられた新しい残高の値が負の値でないかを確認し、それに応じて残高の設定を行います。

これらのステップによって、BankAccount クラスは balance フィールドへのアクセスを制御し、同時に負の残高が設定されないようにします。このアプローチにより、外部からの不正なアクセスや誤った値の設定を防ぎ、クラスの安全性を確保します。

→解答例

「009 メンバへのアクセス制御」問題集リスト

🎯 実習で理解を深めよう

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

コメント

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