0Pricing
TypeScript Academy · Aula

Classes e construtores em TypeScript

Defina classes com propriedades tipadas e construtores

Classes e construtores em TypeScript é uma aula grátis de TypeScript Academy no CoddyKit. Esta é a aula 1 de 4. Você pode ler a aula completa abaixo gratuitamente — depois pratica ao vivo no navegador com um editor de código integrado e um tutor de IA 24/7. Faz parte do caminho de aprendizado de TypeScript Academy, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de TypeScript Academy inclui 4 aulas no total.

Boas-vindas

As classes do TypeScript são classes do JavaScript com anotações de tipos. Elas combinam dados e comportamento em uma estrutura orientada a objetos e tipada.

Declaração de classe com propriedades

Declare as propriedades da classe no início da classe, especificando seus tipos. O TypeScript verifica todos os usos.
class Person {
  name: string;
  age: number;

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

Forma abreviada das propriedades de parâmetros

Prefixe os parâmetros do construtor com um modificador de acesso para criar e inicializar automaticamente uma propriedade da classe.
class Person {
  constructor(
    public name: string,
    private age: number
  ) {} // properties created automatically
}

Métodos tipados

Os métodos de classes usam as mesmas anotações de tipos de parâmetros e de retorno que as funções comuns.
class Calculator {
  add(a: number, b: number): number {
    return a + b;
  }
}

Acessores e modificadores

Utilize as palavras-chave get e set para criar propriedades calculadas. O TypeScript verifica seus tipos.
class Circle {
  constructor(private radius: number) {}
  get area(): number { return Math.PI * this.radius ** 2; }
  set r(v: number) { this.radius = v; }
}

Classe como tipo

Uma classe define tanto um valor (a função construtora) quanto um tipo (a estrutura da instância). Utilize o nome da classe como anotação de tipo.
class Dog { name = 'Rex'; bark() { return 'Woof'; } }
const d: Dog = new Dog();

Membros estáticos

As propriedades e os métodos estáticos pertencem à própria classe, não às instâncias. Acesse-os por meio do nome da classe.
class MathHelper {
  static PI = 3.14159;
  static square(n: number): number { return n * n; }
}
console.log(MathHelper.PI);

Herança de classes

Utilize `extends` para herdar de uma classe base. Chame `super()` no construtor para inicializar a classe pai.
class Animal {
  constructor(public name: string) {}
  speak(): string { return '...'; }
}
class Dog extends Animal {
  speak(): string { return 'Woof!'; }
}

Classes abstratas

As classes abstratas não podem ser instanciadas. Elas definem um contrato que as subclasses devem implementar.
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; }
}

Tipo da instância atual em classes

O tipo `this` refere-se ao tipo da instância atual, permitindo APIs fluentes/de construção com tipos de retorno corretos.
class Builder {
  private parts: string[] = [];
  add(p: string): this { this.parts.push(p); return this; }
  build(): string { return this.parts.join(','); }
}

Classe versus interface versus tipo

As classes são valores em tempo de execução com construtores. As interfaces e os aliases de tipos são estruturas de tipos que existem somente em tempo de compilação. Utilize classes quando precisar de instanciação e métodos.

Verificação rápida

Qual é o efeito de prefixar um parâmetro do construtor com `public` no TypeScript?

Recapitulação

As classes do TypeScript adicionam tipos às classes do JavaScript. Utilize propriedades de parâmetros para declarações concisas, modificadores de acesso para encapsulamento e classes abstratas para impor contratos às subclasses.

Perguntas Frequentes

A aula “Classes e construtores em TypeScript” é grátis?

Sim — o texto completo de “Classes e construtores em TypeScript” é grátis para ler aqui na web. Para praticá-la interativamente (um editor de código integrado e um tutor de IA 24/7) e desbloquear o restante do curso de TypeScript Academy, atualize para CoddyKit PRO. O curso de TypeScript Academy inclui 4 aulas no total.

O que vou aprender em “Classes e construtores em TypeScript”?

Defina classes com propriedades tipadas e construtores Você pratica TypeScript Academy com código prático que executa diretamente no navegador, e um tutor de IA 24/7 responde suas dúvidas enquanto trabalha na aula.

Preciso ter experiência prévia para começar TypeScript Academy?

Nenhuma experiência prévia é necessária. TypeScript Academy no CoddyKit é estruturado para alunos iniciantes até avançados, então você pode começar aqui ou desde o início e aprender no seu ritmo. Esta é a aula 1 de 4.

Quanto tempo leva a aula “Classes e construtores em TypeScript”?

A maioria das aulas CoddyKit leva cerca de 5–10 minutos. Cada uma é compacta e interativa, então você faz progresso constante e retoma exatamente de onde parou entre web e app.

Posso escrever e executar código nesta aula de TypeScript Academy?

Sim. Cada aula de TypeScript Academy inclui um editor de código integrado, então você escreve e executa código real direto no navegador e recebe feedback de IA instantaneamente — nenhuma configuração local necessária.

Todas as aulas deste curso

  1. Classes e construtores em TypeScript
  2. Modificadores public, private e protected
  3. Propriedades readonly e propriedades de parâmetros
  4. Implementando interfaces com classes
← Voltar para TypeScript Academy