0Pricing
TypeScript Academy · Lekcja

Klasy i konstruktory w TypeScript

Definiuj klasy z właściwościami o określonych typach i konstruktorami.

Klasy i konstruktory w TypeScript to bezpłatna lekcja TypeScript Academy na CoddyKit. To lekcja 1 z 4. Możesz przeczytać całą lekcję poniżej za darmo — a potem ćwiczyć ją interaktywnie w przeglądarce z wbudowanym edytorem kodu i tutorem AI dostępnym 24/7. To część ścieżki edukacyjnej TypeScript Academy, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs TypeScript Academy zawiera 4 lekcji w sumie.

Wprowadzenie

Klasy TypeScriptu to klasy JavaScriptu z adnotacjami typów. Łączą dane i zachowanie w typowanej, obiektowej strukturze.

Deklarowanie klasy z właściwościami

Proszę deklarować właściwości klasy na jej początku wraz z ich typami. TypeScript sprawdza wszystkie użycia.
class Person {
  name: string;
  age: number;

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

Skrócony zapis właściwości parametrów

Proszę poprzedzić parametry konstruktora modyfikatorem dostępu, aby automatycznie utworzyć i zainicjalizować właściwość klasy.
class Person {
  constructor(
    public name: string,
    private age: number
  ) {} // properties created automatically
}

Typowane metody

Metody klas używają takich samych adnotacji typów parametrów i wartości zwracanych jak zwykłe funkcje.
class Calculator {
  add(a: number, b: number): number {
    return a + b;
  }
}

Gettery i settery

Proszę używać słów kluczowych get i set do tworzenia właściwości wyliczanych. TypeScript sprawdza ich typy.
class Circle {
  constructor(private radius: number) {}
  get area(): number { return Math.PI * this.radius ** 2; }
  set r(v: number) { this.radius = v; }
}

Klasa jako typ

Klasa definiuje zarówno wartość (funkcję konstruktora), jak i typ (kształt instancji). Proszę używać nazwy klasy jako adnotacji typu.
class Dog { name = 'Rex'; bark() { return 'Woof'; } }
const d: Dog = new Dog();

Elementy statyczne

Właściwości i metody statyczne należą do samej klasy, a nie do jej instancji. Proszę uzyskiwać do nich dostęp za pomocą nazwy klasy.
class MathHelper {
  static PI = 3.14159;
  static square(n: number): number { return n * n; }
}
console.log(MathHelper.PI);

Dziedziczenie klas

Proszę użyć `extends`, aby dziedziczyć po klasie bazowej. W konstruktorze proszę wywołać `super()`, aby zainicjalizować klasę nadrzędną.
class Animal {
  constructor(public name: string) {}
  speak(): string { return '...'; }
}
class Dog extends Animal {
  speak(): string { return 'Woof!'; }
}

Klasy abstrakcyjne

Klas abstrakcyjnych nie można instancjonować. Definiują kontrakt, który podklasy muszą zrealizować.
abstract class Shape {
  abstract area(): number;
  describe(): string { return `Area: ${this.area()}`; }
}
class Square extends Shape {
  constructor(private side: number) { super(); }
  area() { return this.side ** 2; }
}

Typ this w klasach

Typ `this` odnosi się do typu bieżącej instancji, umożliwiając tworzenie płynnych interfejsów API typu fluent/builder z prawidłowymi typami zwracanymi.
class Builder {
  private parts: string[] = [];
  add(p: string): this { this.parts.push(p); return this; }
  build(): string { return this.parts.join(','); }
}

Klasa a interfejs i typ

Klasy są wartościami dostępnymi w czasie wykonywania i mają konstruktory. Interfejsy i aliasy typów to kształty typów istniejące wyłącznie w czasie kompilacji. Proszę używać klas, gdy potrzebne jest tworzenie instancji i używanie metod.

Szybki sprawdzian

Jaki jest skutek poprzedzenia parametru konstruktora słowem `public` w TypeScript?

Podsumowanie

Klasy TypeScriptu dodają typy do klas JavaScriptu. Proszę używać właściwości parametrów do zwięzłych deklaracji, modyfikatorów dostępu do enkapsulacji oraz klas abstrakcyjnych do wymuszania kontraktów podklas.

Często zadawane pytania

Czy lekcja „Klasy i konstruktory w TypeScript” jest bezpłatna?

Tak — pełny tekst „Klasy i konstruktory w TypeScript” jest dostępny za darmo tutaj w sieci. Aby ćwiczyć ją interaktywnie (wbudowany edytor kodu i tutor AI dostępny 24/7) i odblokować resztę kursu TypeScript Academy, przejdź na CoddyKit PRO. Kurs TypeScript Academy zawiera 4 lekcji w sumie.

Co nauczysz się w „Klasy i konstruktory w TypeScript”?

Definiuj klasy z właściwościami o określonych typach i konstruktorami. Ćwiczysz TypeScript Academy z praktycznym kodem, który uruchamiasz bezpośrednio w przeglądarce, a tutor AI dostępny 24/7 odpowiada na Twoje pytania podczas pracy nad lekcją.

Czy potrzebuję doświadczenia, aby zacząć TypeScript Academy?

Nie wymagamy żadnego doświadczenia. TypeScript Academy w CoddyKit jest strukturyzowany dla początkujących i zaawansowanych użytkowników, więc możesz zacząć tutaj lub od początku i uczyć się w swoim tempie. To lekcja 1 z 4.

Ile czasu zajmuje lekcja „Klasy i konstruktory w TypeScript”?

Większość lekcji CoddyKit trwa około 5–10 minut. Każda lekcja to mały, interaktywny krok, dzięki czemu robisz systematyczne postępy i zawsze wracasz dokładnie do tego samego miejsca — na webie i w aplikacji.

Czy mogę pisać i uruchamiać kod w tej lekcji TypeScript Academy?

Tak. Każda lekcja TypeScript Academy zawiera wbudowany edytor kodu, więc piszesz i uruchamiasz prawdziwy kod bezpośrednio w przeglądarce i od razu otrzymujesz sprzężenie zwrotne od AI — bez konfiguracji na komputerze.

Wszystkie lekcje w tym kursie

  1. Klasy i konstruktory w TypeScript
  2. Modyfikatory public, private i protected
  3. Właściwości readonly i właściwości parametrów
  4. Implementowanie interfejsów za pomocą klas
← Powrót do TypeScript Academy