| |
C++ |
Java |
C# |
Visual Basic(.NET) |
Delphi言語 |
JavaScript |
| クラスの宣言 |
class、struct |
class |
class |
Class |
class |
prototype |
| あらゆるスコープからの参照許可 |
public |
public |
public |
Public |
public,published |
N/A |
| 同一パッケージ (アセンブリ) 内部からの参照許可 |
N/A |
(無指定がデフォルト) |
internal |
Friend |
(同一ユニット内に記述) |
N/A |
| クラス外部からの参照不許可 |
private |
private |
private |
Private |
private |
N/A |
| サブクラス以外からの参照不許可 |
protected |
protected |
protected |
Protected |
protected |
N/A |
| 継承関係の無いクラスのプライベートメンバ参照許可 |
friend |
N/A |
N/A |
プライベートアクセサか、リフレクションを使用(VC#も同様) |
(同一ユニット内に記述) |
N/A |
| クラスの各インスタンスで共有されるメンバ |
static |
static |
static |
Shared |
class |
N/A |
| 新規オブジェクトの作成 |
new |
new |
new |
New、CreateObject() |
class.create |
new |
| 値を返さない関数(メソッド) |
void 関数名(){} |
void メソッド名(){} |
void メソッド名(){} |
Sub プロシージャ名() |
procedure |
N/A |
| 関数(メソッド)のオーバーロード(多重定義) |
N/A(デフォルト) |
N/A(デフォルト) |
N/A(デフォルト) |
Overloads |
overload |
N/A(デフォルト) |
| 自分自身のオブジェクトへの参照 |
this |
this |
this |
Me |
this |
self |
| コンストラクタの宣言 |
クラス名(){} |
クラス名(){} |
クラス名(){} |
Sub New() End Sub |
constructor |
function プロトタイプ名(){} |
| オブジェクト破棄時処理の宣言 |
~クラス名() {} |
finalize() {} |
Dispose(){}, ~クラス名() {} |
Sub Dispose() End Sub, Sub Finalize() End Sub |
destructor |
N/A |
| スーパークラスの参照 |
スーパークラス名 |
super |
base |
MyBase |
inherited |
N/A |
| インタフェースの宣言 |
N/A |
interface |
interface |
Interface |
interface |
N/A |
| 実装されるインタフェースの指定 |
N/A |
implements |
: |
Implements |
. |
N/A |
| 抽象クラスの宣言 |
N/A |
abstract |
abstract |
MustInherit |
abstract |
N/A |
| 継承不可クラスの宣言 |
N/A |
final |
sealed |
NotInheritable |
N/A |
N/A |
| スーパークラスからのクラスの派生 |
: |
extends |
: |
Inherits |
=class(superclass) |
N/A |
| メソッドのオーバーライド |
N/A |
(任意, Java SE 5から) |
override |
Overrides |
override |
N/A |
| サブクラスにて実装を強制する関数(メソッド)の宣言 |
= 0 |
abstract |
abstract |
MustOverride |
abstract |
N/A |
| オーバーライド不可関数(メソッド)の宣言 |
N/A(デフォルト) |
final |
sealed |
NotOverridable |
N/A |
| オーバーライド可能関数(メソッド)の宣言 |
virtual |
N/A(デフォルト) |
virtual |
Overridable |
virtual,dynamic |
| サブクラスにおけるスーパークラスのメンバの隠蔽 |
N/A |
N/A(デフォルト) |
new |
Shadows |
N/A |
N/A |
| クラスメソッドへの型安全な参照の宣言 |
N/A |
N/A |
delegate |
Delegate |
N/A |
N/A |
| 列挙型の宣言 |
enum |
enum (Java SE 5から, のサブクラス扱い) |
enum |
Enum、End Enum |
typename=(enm1,enm2,...) |
N/A |
| アノテーション・属性宣言 |
N/A |
@interface アノテーション名 (のサブインタフェース扱い) |
class 属性名 : Attribute |
|<AttributeUsage(AttributeTargets.All)>Class 属性名:Inherits Attribute、End Class |
N/A |
N/A |
| アノテーション・属性使用 |
N/A |
@アノテーション名(変数名1=値1,変数名2=値2...) |
[属性名1(変数名1=値1,変数名2=値2...),属性名2(...)...] |
<属性名1(引数1,引数2,...,変数名1:=値1,変数名2:=値2...),属性名2(...)...> |
N/A |
N/A |
| ジェネリック型・テンプレート |
型名<パラメータ1,パラメータ2...> |
クラス名<パラメータ1,パラメータ2...> |
型名<パラメータ1,パラメータ2...> |
型名(Of パラメータ1,パラメータ2...) |
N/A |
N/A |
| ジェネリック型パラメータ制約 |
N/A |
クラス名< パラメータ1 extends パラメータ1のスーパークラス叉はスーパーインタフェース, パラメータ2...> 叉は クラス名< パラメータ1 super パラメータ1のサブクラスまたはサブインタフェース, パラメータ2...> |
where パラメータ1 : パラメータ1のスーパークラス, パラメータ1のスーパーインタフェース where パラメータ2... |
(Of T As {New,Class,Structure,インターフェイス名,クラス名}, U As {・・・}) |
N/A |
N/A |
| ジェネリック型パラメータのワイルドカード指定 |
N/A |
クラス名, ?, ?, ...> |
N/A |
N/A |
N/A |
N/A |