【Salesforce 認定Platformデベロッパー】試験対策:第108問

問題

開発者は金融システムのApexクラスを実装しています。このクラスでは、変数creditAmountdebtAmountは、一度値が代入されると変更できないようにする必要があります。値が1回しか代入されないようにするために、開発者が変数を宣言する方法はどれですか。2つ選びなさい。

  • staticキーワードを使用し、クラスのコンストラクタでその値を割り当てます。
  • finalキーワードを使用し、クラスのコンストラクタでその値を割り当てます。
  • staticキーワードを使用し、その値をstaticイニシャライザに割り当てます。
  • finalキーワードを使用し、変数を宣言するときにその値を割り当てます。

正解

  • staticキーワードを使用し、クラスのコンストラクタでその値を割り当てます。
  • finalキーワードを使用し、クラスのコンストラクタでその値を割り当てます。
  • staticキーワードを使用し、その値をstaticイニシャライザに割り当てます。
  • finalキーワードを使用し、変数を宣言するときにその値を割り当てます。

解説

それぞれの選択肢の理由について説明します。

□ staticキーワードを使用し、クラスのコンストラクタでその値を割り当てます。
これは不正解です。staticキーワードは変数がクラスレベルで一度だけ初期化されることを意味しますが、変数の値が変更できないことを保証するものではありません。

□ finalキーワードを使用し、クラスのコンストラクタでその値を割り当てます。
これは正解です。finalキーワードは変数に値を一度だけ割り当てることを保証します。コンストラクタ内でfinal変数を初期化することにより、オブジェクトのインスタンスごとに一意の値を一度だけ割り当てることができます。

□ staticキーワードを使用し、その値をstaticイニシャライザに割り当てます。
これは不正解です。staticイニシャライザで初期化されたstatic変数は、クラスがロードされるときに一度だけ値が割り当てられますが、それはクラスのすべてのインスタンスで共有される値です。変数の値が変更できないことを保証するものではありません。

□ finalキーワードを使用し、変数を宣言するときにその値を割り当てます。
これは正解です。finalキーワードは変数が初期化後に変更できないことを保証します。変数宣言時にfinal変数に値を割り当てることで、その値は変更不可能になります。

次の問題へ

前の問題へ

1問目から復習する

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

雇われのシステムエンジニアです。
普段は車載ECUのセキュリティー分野に従事しております。

■保有資格
Salesforce 認定 アドミニストレーター
Salesforce 認定 Platform アプリケーションビルダー
Salesforce 認定 Platform デベロッパー

コメント

コメントする

目次