📘

Apexのアクセス修飾子について

2021/08/07に公開

使用可能な修飾子

外部からクラス、メソッド、変数を制御するするためにApexでは以下が使用可能。

  1. private
  2. protected
  3. pulic
  4. global

修飾子を整理する

アクセス可能箇所 備考
private 定義されたApex内 アクセス修飾子を指定しない場合、privateになる
(デフォルト)
protected 定義する Apex クラスのすべての内部クラス、および定義する Apex クラスを拡張するクラス インスタンスメソッドやメンバー変数のみ利用可能
public 同じアプリケーションや名前空間のすべての Apex クラス Javaのような使い方をする場合、global を利用する
global 同じアプリケーションの Apex コードだけでなく、クラスへのアクセス権のあるすべての Apex コード ・アプリケーション外 (SOAP API 内、または別の Apex コード) から参照されるすべてのメソッドはこのアクセス修飾子を使用する必要がある
・メソッドまたは変数を global として宣言する場合、それを含むクラスも global として宣言する必要がある
・アプリケーション依存関係維持が困難なため、利用することをおすすめしない

https://developer.salesforce.com/docs/atlas.ja-jp.apexcode.meta/apexcode/apex_classes_access_modifiers.htm

Discussion