返回

解锁 TypeScript 中的访问修饰符:揭秘你的代码访问密码

前端

嘿,前端骚年!你是否曾在代码中遇到需要保护的秘密?让我们一起来揭开 TypeScript 中访问修饰符的神秘面纱吧!public、private 和 protected 三种访问修饰符将带你进入一个有条不紊、安全可靠的编码世界。

什么是访问修饰符?

访问修饰符就像代码世界里的门卫,它们控制着谁可以访问和修改你的数据和方法。它们决定了不同类别的代码(类、接口、属性和方法)的可见性范围。

TypeScript 中的访问修饰符

TypeScript 中有三种访问修饰符:

  • public: 大门敞开!任何人都可以访问具有 public 修饰符的代码,包括类、接口、属性和方法。它适用于需要在程序的任何部分访问的数据和功能。

  • private: 私人领地!只有定义该代码的类才能访问具有 private 修饰符的代码。它用于保护敏感数据和防止意外修改。

  • protected: 家庭内部!只有定义该代码的类及其派生类才能访问具有 protected 修饰符的代码。它为继承提供了灵活性,同时保持数据和功能的保护。

使用访问修饰符的好处

使用访问修饰符的好处多多:

  • 代码封装: 它将代码组织成易于管理的模块,提高代码的可读性和可维护性。
  • 数据安全: 它通过限制对敏感数据的访问来保护你的应用程序免受恶意攻击。
  • 可扩展性: 它允许你创建可扩展的代码库,其中派生类可以访问受保护的数据和方法。

实战演练

让我们用一个例子来说明访问修饰符的用法:

class Person {
  private name: string; // 私有属性,仅在 Person 类中可见

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

  public getName(): string { // 公共方法,可以在任何地方访问
    return this.name;
  }

  protected changeName(newName: string): void { // 受保护的方法,仅在 Person 类及其派生类中可见
    this.name = newName;
  }
}

class Employee extends Person {
  public salary: number; // 公共属性,在 Employee 类及其派生类中可见

  constructor(name: string, salary: number) {
    super(name);
    this.salary = salary;
  }

  public getSalary(): number { // 公共方法,可以在任何地方访问
    return this.salary;
  }

  protected promote(newSalary: number): void { // 受保护的方法,仅在 Employee 类及其派生类中可见
    this.salary = newSalary;
  }
}

在这个示例中,Person 类有一个私有属性 name,一个公共方法 getName() 和一个受保护的方法 changeName()。Employee 类继承自 Person 类,并具有一个公共属性 salary 和一个受保护的方法 promote()。

SEO 优化