Java SE Bronze (1Z0-818-JPN) 試験 / オブジェクト指向の概念 ・ 無料問題 4/5
オブジェクト指向の概念 問題4[データ隠蔽とカプセル化]
次のコードを実行したときの出力を選んでください。
class Account { private int balance; public void deposit(int amount) { if (amount > 0) { balance += amount; } } public int getBalance() { return balance; }}public class Main { public static void main(String[] args) { Account acc = new Account(); acc.deposit(1000); acc.deposit(-500); System.out.println(acc.getBalance()); }}選択肢
- A.500
- B.コンパイルエラー
- C.-500
- D.1000正解
解説実行して確認済み
balance は private なので外部から直接変更できず、deposit メソッドを通してのみ変更されます。deposit は0以下の金額を無視するため、-500 の入金は反映されず残高は1000です。このように、メソッド内で値の妥当性を検査できることがカプセル化の利点です。
この問題の答えは、試験の対象バージョンでコードを実際に実行して確かめています。確かめ方は運営者情報に書いています。
Java SE Bronze (1Z0-818-JPN) 試験 の他の分野の無料問題
ここで公開しているのは無料範囲の問題です。無料登録すると、解答の記録・ダッシュボードでの復習ができ、 プレミアムならこの問題セットの全問題と本番形式の模擬試験も解けます。