typestar

Clases y constructores en Dart

El azúcar this. asigna campos; los constructores con nombre abren puertas.

class Sighting {
  final String species;
  final int count;

  // this. in the parameter list assigns fields directly; a named
  // constructor offers a second way in.
  Sighting(this.species, this.count);
  Sighting.single(String species) : this(species, 1);

  @override
  String toString() => '$count x $species';
}

void main() {
  final flock = Sighting('lapwing', 60);
  final loner = Sighting.single('kingfisher');
  print(flock);
  print(loner);
}

Cómo funciona

  1. Sighting(this.species, this.count) declara y asigna a la vez.
  2. Sighting.single es un constructor con nombre que delega con : this(...).
  3. @override toString hace que el objeto se imprima solo.

Palabras clave y builtins usados aquí

El intento, en números

Líneas
19
Caracteres a escribir
431
Tokens
95
Ritmo de tres estrellas
70 tpm

Al ritmo de tres estrellas de 70 tokens por minuto, este intento toma unos 81 segundos.

Escribe este fragmento

Paso 1 de 3 en Clases; paso 13 de 27 en Fundamentos del lenguaje.

← Anterior Siguiente →