5.9. Introdução à programação orientada a objetos em Dart: Construtores

Página 65

A programação orientada a objetos (POO) é um paradigma de programação que utiliza a ideia de "objetos" para representar dados e métodos. Dart, a linguagem de programação usada para desenvolver aplicativos Flutter, é uma linguagem orientada a objetos. Neste contexto, vamos explorar um aspecto fundamental da POO em Dart: os construtores.

Os construtores em Dart são funções especiais que são usadas para criar e inicializar um objeto de uma classe. Eles têm o mesmo nome da classe e podem ter parâmetros para inicializar atributos do objeto. Os construtores são chamados quando você cria uma instância de uma classe usando a palavra-chave 'new'.

Para ilustrar, vamos considerar uma classe 'Carro'. Esta classe pode ter atributos como 'marca', 'modelo' e 'ano'. Para inicializar estes atributos quando criamos um objeto 'Carro', podemos usar um construtor. Veja o exemplo abaixo:

class Carro {
  String marca;
  String modelo;
  int ano;

  Carro(String marca, String modelo, int ano) {
    this.marca = marca;
    this.modelo = modelo;
    this.ano = ano;
  }
}

Aqui, 'Carro' é o construtor. Ele aceita três parâmetros e usa-os para inicializar os atributos do objeto. Para criar um objeto 'Carro', faríamos o seguinte:

Carro meuCarro = new Carro('Toyota', 'Corolla', 2020);

Neste caso, 'meuCarro' é um objeto da classe 'Carro'. Seu 'marca' é 'Toyota', seu 'modelo' é 'Corolla' e seu 'ano' é 2020.

Dart também oferece construtores nomeados. Estes são construtores que têm nomes além do nome da classe. Eles são úteis quando uma classe precisa de mais de um construtor. Por exemplo, a classe 'Carro' pode ter um construtor nomeado 'Carro.usado' para criar carros usados:

class Carro {
  String marca;
  String modelo;
  int ano;

  Carro(String marca, String modelo, int ano) {
    this.marca = marca;
    this.modelo = modelo;
    this.ano = ano;
  }

  Carro.usado(this.marca, this.modelo) {
    ano = DateTime.now().year - 1;
  }
}

Aqui, 'Carro.usado' é um construtor nomeado. Ele aceita dois parâmetros para 'marca' e 'modelo', e define 'ano' como o ano anterior ao ano atual. Para criar um carro usado, faríamos o seguinte:

Carro meuCarroUsado = new Carro.usado('Toyota', 'Corolla');

Em Dart, também temos os construtores constantes. Eles são usados para criar objetos imutáveis, ou seja, objetos cujos valores não podem ser alterados depois de serem criados. Para criar um construtor constante, usamos a palavra-chave 'const'.

Finalmente, Dart também oferece a sintaxe de açúcar para construtores: os construtores de inicialização de variáveis. Eles permitem que você inicialize variáveis diretamente nos parâmetros do construtor, tornando o código mais conciso:

class Carro {
  String marca;
  String modelo;
  int ano;

  Carro(this.marca, this.modelo, this.ano);
}

Os construtores são uma parte essencial da programação orientada a objetos em Dart. Eles permitem que você controle como os objetos são criados e inicializados, proporcionando maior flexibilidade e segurança no seu código.

Now answer the exercise about the content:

O que são construtores na programação orientada a objetos em Dart e como eles são usados?

You are right! Congratulations, now go to the next page

You missed! Try again.

Next page of the Free Ebook:

665.10. Introdução à programação orientada a objetos em Dart: Sobrecarga de operadores

Earn your Certificate for this Course for Free! by downloading the Cursa app and reading the ebook there. Available on Google Play or App Store!

Get it on Google Play Get it on App Store

+ 6.5 million
students

Free and Valid
Certificate with QR Code

48 thousand free
exercises

4.8/5 rating in
app stores

Free courses in
video, audio and text