Rumah >hujung hadapan web >tutorial js >Memahami Ini dan Super dalam Typescript

Memahami Ini dan Super dalam Typescript

Barbara Streisand
Barbara Streisandasal
2024-12-24 03:26:171063semak imbas

Dalam Typescript, ini dan super ialah kata kunci yang digunakan dalam pengaturcaraan berorientasikan objek untuk merujuk kepada contoh semasa kelas dan kelas asas, masing-masing.


Kata kunci ini

Definisi: Merujuk kepada kejadian semasa kelas.
Kes Penggunaan:

  • Akses sifat dan kaedah instance.
  • Panggil kaedah lain dalam kelas yang sama.
  • Lepasi objek semasa sebagai hujah
class Pizza {
    name: string

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

    cook():void{
        console.log(`Start cooking ${this.name} pizza`)
    }
}

const pepperoniPizza = new Pizza("pepperoni");
pepperoniPizza.cook();

Understanding This and Super in Typescript

kata kunci super

  • Definisi: Merujuk kepada kelas asas (kelas induk) kelas semasa.
  • Kes Penggunaan:
    • Panggil pembina kelas asas.
    • Akses kaedah dan sifat daripada kelas asas

Contoh:

class Animal {
    name: string;

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

    makeSound(): void {
      console.log(`${this.name} makes a sound.`);
    }
  }

  class Dog extends Animal {
    constructor(name: string) {
      super(name); // Calls the constructor of the base class
    }

    makeSound(): void {
      super.makeSound(); // Calls the base class method
      console.log(`${this.name} barks.`);
    }
  }

  const dog = new Dog("Buddy");
  dog.makeSound();

dan output termasuk: makeSound() Kelas Asas ialah Haiwan dan makeSound subkelas ialah Anjing seperti ini:

Buddy makes a sound.
Buddy barks.

Understanding This and Super in Typescript


Perkara Utama:

1. ini:

  • Sentiasa merujuk kepada contoh semasa
  • Boleh digunakan dalam pembina, kaedah atau fungsi anak panah.
  • Dalam fungsi anak panah, ini terikat secara leksikal dengan konteks sekeliling.

*2. hebat: *

  • Hanya boleh digunakan dalam kelas yang melanjutkan kelas lain.
  • Mesti dipanggil dalam pembina sebelum mengakses ini dalam kelas terbitan.
  • Boleh digunakan untuk memanggil kaedah kelas induk.
class Parent {
  protected message: string = "Hello from Parent!";
}

class Child extends Parent {
  showMessage(): void {
    console.log(super.message); // Accesses the parent class property
  }
}

const child = new Child();
child.showMessage(); // Output: Hello from Parent!

Dengan menggunakan ini dan super betul, anda boleh mengurus warisan dan gelagat objek dengan berkesan dalam Typescript.

Atas ialah kandungan terperinci Memahami Ini dan Super dalam Typescript. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn