0Pricing
TypeScript Academy · Lezione

Classi e costruttori in TypeScript

Definisca classi con proprietà e costruttori tipizzati.

Classi e costruttori in TypeScript è una lezione TypeScript Academy gratuita su CoddyKit. Questa è la lezione 1 di 4. Puoi leggere la lezione completa qui gratuitamente — poi esercitati direttamente nel browser con un editor di codice integrato e un tutor IA disponibile 24/7. Fa parte del percorso di apprendimento TypeScript Academy, e i tuoi progressi si sincronizzano tra il web e l'app CoddyKit. Il corso TypeScript Academy include 4 lezioni in totale.

Benvenuto

Le classi di TypeScript sono classi JavaScript con annotazioni di tipo. Combinano dati e comportamento in una struttura tipizzata e orientata agli oggetti.

Dichiarazione di una classe con proprietà

Dichiari le proprietà della classe all'inizio della classe, specificandone i tipi. TypeScript verifica tutti gli utilizzi.
class Person {
  name: string;
  age: number;

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

Sintassi abbreviata delle proprietà nei parametri

Anteponendo un modificatore di accesso ai parametri del costruttore, si crea e inizializza automaticamente una proprietà della classe.
class Person {
  constructor(
    public name: string,
    private age: number
  ) {} // properties created automatically
}

Metodi tipizzati

I metodi delle classi utilizzano le stesse annotazioni dei parametri e del tipo restituito delle funzioni normali.
class Calculator {
  add(a: number, b: number): number {
    return a + b;
  }
}

Getter e setter

Utilizzi le parole chiave get e set per creare proprietà calcolate. TypeScript ne verifica i tipi.
class Circle {
  constructor(private radius: number) {}
  get area(): number { return Math.PI * this.radius ** 2; }
  set r(v: number) { this.radius = v; }
}

La classe come tipo

Una classe definisce sia un valore (la funzione costruttrice) sia un tipo (la struttura dell'istanza). Utilizzi il nome della classe come annotazione di tipo.
class Dog { name = 'Rex'; bark() { return 'Woof'; } }
const d: Dog = new Dog();

Membri statici

Le proprietà e i metodi statici appartengono alla classe stessa, non alle istanze. Vi si accede tramite il nome della classe.
class MathHelper {
  static PI = 3.14159;
  static square(n: number): number { return n * n; }
}
console.log(MathHelper.PI);

Ereditarietà delle classi

Utilizzi `extends` per ereditare da una classe base. Chiami `super()` nel costruttore per inizializzare la classe padre.
class Animal {
  constructor(public name: string) {}
  speak(): string { return '...'; }
}
class Dog extends Animal {
  speak(): string { return 'Woof!'; }
}

Classi astratte

Le classi astratte non possono essere istanziate. Definiscono un contratto che le sottoclassi devono implementare.
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; }
}

Il tipo this nelle classi

Il tipo `this` si riferisce al tipo dell'istanza corrente e consente di creare API fluenti o basate sul pattern builder con tipi restituiti corretti.
class Builder {
  private parts: string[] = [];
  add(p: string): this { this.parts.push(p); return this; }
  build(): string { return this.parts.join(','); }
}

Classe, interface e type

Le classi sono valori disponibili a runtime con costruttori. Le interfacce e gli alias di tipo sono strutture di tipo disponibili solo in fase di compilazione. Utilizzi le classi quando servono istanziazione e metodi.

Verifica rapida

Qual è l'effetto di anteporre `public` a un parametro del costruttore in TypeScript?

Riepilogo

Le classi di TypeScript aggiungono i tipi alle classi JavaScript. Utilizzi le proprietà nei parametri per dichiarazioni concise, i modificatori di accesso per l'incapsulamento e le classi astratte per imporre i contratti delle sottoclassi.

Domande Frequenti

La lezione «Classi e costruttori in TypeScript» è gratuita?

Sì — il testo completo di «Classi e costruttori in TypeScript» è gratuito qui sul web. Per esercitarvi in modo interattivo (un editor di codice integrato e un tutor IA 24/7) e sbloccare il resto del corso TypeScript Academy, passa a CoddyKit PRO. Il corso TypeScript Academy include 4 lezioni in totale.

Cosa imparerò in «Classi e costruttori in TypeScript»?

Definisca classi con proprietà e costruttori tipizzati. Eserciti TypeScript Academy con codice pratico che esegui direttamente nel browser, e un tutor IA 24/7 risponde alle tue domande mentre lavori sulla lezione.

Ho bisogno di esperienza per iniziare TypeScript Academy?

Non è richiesta alcuna esperienza precedente. TypeScript Academy su CoddyKit è strutturato per principianti e studenti avanzati, quindi puoi iniziare da qui o dall'inizio e procedere al tuo ritmo. Questa è la lezione 1 di 4.

Quanto tempo richiede la lezione «Classi e costruttori in TypeScript»?

La maggior parte delle lezioni CoddyKit richiede circa 5–10 minuti. Ogni lezione è breve e interattiva, quindi fai progressi costanti e riprendi esattamente da dove hai lasciato su web e app.

Posso scrivere ed eseguire codice in questa lezione TypeScript Academy?

Sì. Ogni lezione TypeScript Academy include un editor di codice integrato, quindi scrivi ed esegui codice reale direttamente nel tuo browser e ricevi feedback istantaneo dall'IA — nessuna configurazione locale necessaria.

Tutte le lezioni di questo corso

  1. Classi e costruttori in TypeScript
  2. Modificatori public, private e protected
  3. Proprietà readonly e proprietà dei parametri
  4. Implementazione delle interfacce con le classi
← Torna a TypeScript Academy