Rush Stackショップブログイベント
メインコンテンツに移動

@virtual

タグタイプ: 修飾子

TSDoc 標準化: 拡張

@virtual 修飾子は、C# での virtual キーワードと同様のセマンティクスを持ちます。クラスのメンバーにのみ適用する必要があります。メンバーが子クラスの対応するメンバーによってオーバーライド (つまり再定義) される可能性があることを示します。メソッドはすでに仮想であることを示す abstract があるため、abstract メンバーには @virtual 修飾子を適用しないでください。

@virtual 修飾子は、生成されたドキュメントに表示されます。

API Extractor は現在、@virtual 修飾子が正しく使用されているかどうかを検証しません。(これは将来実装される可能性があります。)

メモ: 他の多くのプログラミング言語とは異なり、TypeScript はクラスの静的メンバーの継承をサポートしています。そのため、@virtual@override@sealed をインスタンスメンバーだけでなく静的メンバーにも使用できます。

使用方法の例

/** @public */
export class Control {
/**
* The title of the control
* @virtual
*/
public get title(): string {
return 'Control';
}

/**
* Draws the control on the screen
* @virtual
*/
public render(): void {
. . .
}
}

/** @public */
export class Button extends Control {
/**
* {@inheritDoc Control.title}
* @override
*/
public get title(): string {
return 'Button';
}

/**
* {@inheritDoc Control.render}
* @override
*/
public render(): void {
. . .
}
}

関連項目