⊗tsSpOpAMPr 10 of 37 menu

TypeScriptにおけるprivate修飾子

修飾子privateは、クラスの外部からプロパティやメソッドへのアクセスを制限したい場合に使用します。 この場合、派生クラスであっても、これらのプロパティにアクセスすることはできません。

例を見てみましょう。クラスUserにプライベートプロパティnameを作成します:

class User { private name: string; constructor(name: string) { this.name = name; } }

コンストラクタにプロパティの値を渡して、クラスのオブジェクトを作成します:

let user: User = new User('john');

クラスの外部でこのプライベートプロパティを読み取ろうとすると、エラーになります:

console.log(user.name); // エラー

同様に、クラスの外部からこのプロパティに値を書き込もうとしてもエラーになります:

user.name = 'eric'; // エラー

一方、クラスのメソッド内では、プライベートプロパティの値を読み取ったり変更したりすることができます:

class User { private name: string; constructor(name: string) { this.name = name; } public getName() { return this.name; // プロパティを読み取る } public setName(name: string) { this.name = name; // プロパティに新しい値を書き込む } }

名前と年齢のプライベートプロパティを持つクラスUserを作成してください。 初期値はコンストラクタを通じて設定されるようにします。

作成したクラスUserに、対応するプライベートプロパティの値を取得できる公開メソッドgetNamegetAgeを追加してください。

作成したクラスUserに、対応するプライベートプロパティの値を変更できる公開メソッドsetNamesetAgeを追加してください。

日本語
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItalianoქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
当サイトでは、サイトの動作、分析、パーソナライゼーションのためにクッキーを使用しています。 データ処理はプライバシーポリシーに従って行われます。
すべて受け入れる 設定 拒否