📜  TypeScript 类私有字段示例 (1)

📅  最后修改于: 2023-12-03 14:48:05.533000             🧑  作者: Mango

TypeScript 类私有字段示例

在 TypeScript 中,你可以通过类私有字段来封装标记为私有的实例变量。私有字段是指使用 "#" 符号定义的实例变量,它们只能在类内部访问。

下面是一个 TypeScript 类示例,演示了如何使用私有字段:

class Person {
  #name: string;

  constructor(name: string) {
    this.#name = name;
  }

  greet() {
    console.log(`Hello, my name is ${this.#name}!`);
  }
}

const person = new Person('John');
person.greet(); // 输出 "Hello, my name is John!"
console.log(person.#name); // 编译错误:私有字段 "#name" 只能在类 "Person" 中访问

在这个示例中,我们定义了一个名为 Person 的类,并在其中定义了一个私有字段 "#name"。构造函数接受一个字符串参数,并将其分配给私有字段。在 greet() 方法中,我们使用私有字段来输出问候语。

请注意,尝试在类外部访问私有字段 "#name" 将会导致编译错误。

私有字段提供了一种简单的方法来封装类内部的状态,并确保没有外部代码可以访问它。这可以帮助您编写更安全、更可靠的代码。

Markdown格式:

TypeScript 类私有字段示例

在 TypeScript 中,你可以通过类私有字段来封装标记为私有的实例变量。私有字段是指使用 "#" 符号定义的实例变量,它们只能在类内部访问。

下面是一个 TypeScript 类示例,演示了如何使用私有字段:

class Person {
  #name: string;

  constructor(name: string) {
    this.#name = name;
  }

  greet() {
    console.log(`Hello, my name is ${this.#name}!`);
  }
}

const person = new Person('John');
person.greet(); // 输出 "Hello, my name is John!"
console.log(person.#name); // 编译错误:私有字段 "#name" 只能在类 "Person" 中访问

在这个示例中,我们定义了一个名为 Person 的类,并在其中定义了一个私有字段 "#name"。构造函数接受一个字符串参数,并将其分配给私有字段。在 greet() 方法中,我们使用私有字段来输出问候语。

请注意,尝试在类外部访问私有字段 "#name" 将会导致编译错误。

私有字段提供了一种简单的方法来封装类内部的状态,并确保没有外部代码可以访问它。这可以帮助您编写更安全、更可靠的代码。