No Results
Search Tips:
- Please consider misspellings
- Try different search keywords
Apex クラスと Java クラスの違い
次のリストに Apex クラスと Java クラスの主な違いを示します。
- 内部クラスとインターフェースは、外部クラスの 1 つ下のレベルでのみ宣言できます。
- 静的メソッドと変数は、内部クラスではなく最上位クラスでのみ宣言できます。
- 内部クラスは、Java の静的な内部クラスのように機能しますが、static キーワードを要求しません。内部クラスは、外部クラスのようにインスタンスメンバー変数を持つことができますが、(this キーワードを使った) 外部クラスのインスタンスへの暗黙的ポインタはありません。
- デフォルトのアクセス修飾子は private です。つまり、メソッドまたは変数は、定義された Apex クラス内からのみアクセス可能です。アクセス修飾子を指定しない場合、メソッドや変数は private となります。
- メソッドまたは変数にアクセス修飾子を指定しない場合は、private アクセス修飾子を指定した場合と同じ意味となります。
- public アクセス修飾子は、メソッドまたは変数がこのアプリケーションまたは名前空間内のすべての Apex で使用可能なことを意味します。
- global アクセス修飾子は、メソッドまたは変数が、同じアプリケーション内の Apex コードだけではなく、クラスへのアクセス権を付与されたすべての Apex コードで使用可能なことを意味します。アプリケーション外 (SOAP API 内、または別の Apex コード) から参照されるすべてのメソッドはこのアクセス修飾子を使用する必要があります。メソッドまたは変数を global として宣言する場合、それを含むクラスも global として宣言する必要があります。
- メソッドおよびクラスはデフォルトで final です。
- virtual 定義修飾子は、拡張や上書きを許可します。
- override キーワードは、基本クラスメソッドを上書きするメソッドで明示的に使用する必要があります。
- インターフェースメソッドには修飾子はなく、常に global となります。
- 例外クラスは、例外または別のユーザ定義例外への拡張が必要です。
- 例外クラス名の末尾には、exception をつける必要があります。
- 例外クラスは 4 つの暗黙的なコンストラクタが組み込まれていますが、追加することもできます。
- クラスとインターフェースはトリガや匿名ブロック内で定義できますが、ローカルとしてのみ定義できます。