IT人材をお探しの方は、まずはお電話ください。担当営業がすぐにご要望にマッチした人材をご提案いたします。
tel:03-6409-6766 お急ぎの方はお電話ください

ブログTOP > IT・技術関連 > Salesforceのgetterとは?利用シーンごとの実装方法を解説!

Salesforceのgetterとは?利用シーンごとの実装方法を解説!

IT・技術関連 更新日:2024.09.05
エンジニア採用
Salesforceのgetterとは?利用シーンごとの実装方法を解説!

Salesforceのgetterとは? JavaやC#などの言語でもgetterという仕組みが提供されています。Salesforceのgetterもそういった言語と同様に、プロパティを参照するための仕組みとして提供されています。 また、Salesforceのgetterでも他の言語同様に、setterというプロパティを書き込むための仕組みと一緒に利用することがほとんどです。Salesforceでgetterが利用されるシーンには、次のシーンがあります。

  • Apexのプログラム内でプロパティを参照する
  • ApexのプロパティをVisualforceページで表示する
  • Lightning Web Componentのプログラム内のプロパティを参照する

getterの実装方法

Salesforceでのgetterの実装方法を実装例とともに解説します。

Apexのプログラム内でプロパティを読み書きする方法

Apexのプログラム内で、Apexのプロパティを読み書きする方法を2つ解説します。Apexのプロパティでは、読み取る処理のgetterと書き込む処理のsetterを一緒に宣言することが多いため、setterの実装方法もあわせて解説します。

getter/setterの処理を実装する方法

getのブロック内にgetterが呼ばれたときの処理を実装し、setブロック内にsetterが呼ばれたときの処理を実装する方法です。プロパティの読み書き処理をカスタマイズしたいときに利用します。 例)プロパティを宣言するクラス
public class HogeProperty {
  public String hoge {
    get {
      // getterが呼ばれたときに実行
      return hoge;
    }
    set {
      // setterが呼ばれたときに実行
      if (value == ""OK"") {
        // 設定値(value)が「OK」の場合、hogeに「〇」を設定
        hoge = ""〇"";
      } else {
        // それ以外の場合、hogeに「×」を設定
        hoge = ""×"";
      }
    }
  }
}
例)プロパティを呼び出す処理
HogeProperty hp = new HogeProperty();
// 設定値(value = OK)でsetの処理が実行されるため、hp.hogeに「〇」が設定される
hp.hoge = ""OK"";
System.debug(hp.hoge); // getの処理が実行され、実行結果「〇」が出力される

プロパティを自動で読み書きする方法

フィールドの宣言とともにget/setを宣言する方法です。この方法ではgetter/setterの処理を実装せず、プロパティを自動で読み書きします。プロパティの読み書き処理がカスタマイズできませんが、コードを簡素化できるというメリットがあります。 例)プロパティを宣言するクラス
public class FugaProperty {
  // get/setを宣言することで、自動でプロパティを読み書きする
  public String fuga {get;set;}
}
例)プロパティを呼び出す処理
FugaProperty fp = new FugaProperty()
fp.fuga = ""OK""; // FugaPropertyのfugaに「OK」が設定される
System.debug(fp.fuga); // fp.fugaの値が取得され、「OK」が出力される

ApexのプロパティをVisualforceページで表示する方法

ここでは、getterを使ってApexのプロパティをVisualforceページで表示する方法を解説します。

【Step1】Controllerクラスを実装する

ApaxのControllerクラスで「getプロパティ名」という形式の名前のメソッドを実装します。
public class TestController {
  // メソッドを「getプロパティ名」の形式で宣言
  public String getGreeting() {
    return ""おはよう"";
  }
}

【Step2】Visualforceページを実装する

Visualforceページで「{!プロパティ名}」の形式で記述します。
<apex:page controller=""TestController "">
    <apex:pageBlock title=""{!$User.FirstName}! さんへ"">
        <!-- VisualforceページにApexのgetGreeting()の実行結果「おはよう」が表示される -->
        {!greeting}
    </apex:pageBlock>
</apex:page>

LightningWebComponentのプログラム内のプロパティを読み書きする方法

getter/setterを利用して、LightningWebComponent(LWC)のプログラム内のプロパティを読み書きする実装方法について解説します。実装例では、日本語の挨拶を英語の挨拶に変換します。

【Step1】HTMLを実装する

templateのHTMLにプロパティを「{プロパティ名}」形式で宣言します。 例)sample.html
<template>
  {changeEnglishGreeting}
</template>

【Step2】JavaScriptを実装する

componentのJavaScriptにget/setのメソッドを実装し、どちらかのメソッドに「@api」を付与します。 例)sample.js
import { LightningElement, api } from 'lwc';
export default class Sample extends LightningElement {
  changeEnglishGreeting;

  @api
  get greeting() {
    // getterの処理を実装
    return this.changeEnglishGreeting;
  }
  set greeting(value) {
    // setterの処理を実装
    if (greeting == ""おはよう"") {
      this.changeEnglishGreeting = ""Good morning"";
    } else if (greeting == ""こんにちは"") {
      this.changeEnglishGreeting = ""Hello"";
    } else if (greeting == ""こんばんは"") {
      this.changeEnglishGreeting = ""Good evening"";
    }
  }
}

getterを利用してみよう

今回は、Salesforceのgetterについて解説しました。getterは、Salesforceが提供する様々な言語でプロパティを読み込む際に利用します。利用シーンによって実装方法が異なりますので、プログラムを実装する際は、この記事を参考にしてください。]]>

この記事の監修者・著者

株式会社オープンアップITエンジニア
株式会社オープンアップITエンジニアAWSパートナー/Salesforce認定コンサルティングパートナー 認定企業
ITエンジニア派遣サービス事業を行っています。AWSやSalesforceなど専門領域に特化したITエンジニアが4,715名在籍し、常時100名以上のITエンジニアの即日派遣が可能です。

・2021年:AWS Japan Certification Award 2020 ライジングスター of the Year 受賞
・2022年3月:人材サービス型 AWSパートナー認定
・AWS認定資格保有者数1,154名(2024年6月現在)
・Salesforce認定コンサルティングパートナー
・Salesforce認定資格者276名在籍(2024年5月現在)
・LPIC+CCNA 認定資格者:472 名(2024年6月時点)
ITエンジニアの派遣を利用したい企業様へ
ITエンジニアを派遣で採用したい企業様へ
  • 求人・転職サイトや自社採用サイトを使っているが、自社に合ったITエンジニアが応募してこない…
  • すぐに採用したいが、応募がぜんぜん集まらない
こんな悩みをお持ちの採用・人事担当者の方は、
オープンアップITエンジニアをご検討ください!

当社のITエンジニア派遣サービスは

  • 派遣スピードが速い!(最短即日)
  • 4,500名のエンジニアから貴社にマッチした人材を派遣
  • 正社員雇用も可能

こんな特長があり、貴社の事業やプロジェクトに合った最適なITエンジニアを派遣可能です。
まずは下記ボタンから無料でご相談ください。

無料相談のお申し込みはこちら
IT・技術関連の記事一覧へ

カテゴリから記事を探す

すべての記事一覧へ