Volver a la página principal
jueves 31 octubre 2024
4

Cómo usar static en Dart

La palabra clave static en Dart permite declarar miembros de clase que pertenecen a la clase en sí misma, y no a instancias individuales. Los miembros static son útiles cuando necesitamos compartir variables o métodos entre todas las instancias de una clase, ahorrando memoria y facilitando el acceso sin crear una instancia.

¿Qué es un miembro static en Dart?

Un miembro static puede ser un campo o un método que es accesible directamente a través de la clase, sin necesidad de crear un objeto. Esto significa que los miembros static se crean solo una vez en memoria, lo que mejora la eficiencia cuando se necesitan datos o funciones comunes.

Ejemplo básico de static en Dart

En el siguiente ejemplo, se utiliza un miembro static para contar el número de instancias creadas de una clase:

class Contador {
  static int numeroDeInstancias = 0;

  Contador() {
    numeroDeInstancias++;
  }
}

void main() {
  Contador c1 = Contador();
  Contador c2 = Contador();
  
  print(Contador.numeroDeInstancias); // Salida: 2
}

En este caso, numeroDeInstancias es un campo static que lleva la cuenta de cuántas veces se ha creado un objeto de la clase Contador. Es accesible directamente a través de la clase Contador, sin necesidad de instancias.

Uso de métodos static

Al igual que los campos, también es posible declarar métodos static en Dart. Los métodos static solo pueden acceder a otros miembros static de la clase y no a los miembros no estáticos.

class Calculadora {
  static int sumar(int a, int b) => a + b;
}

void main() {
  int resultado = Calculadora.sumar(5, 3);
  print(resultado); // Salida: 8
}

El método sumar es static, por lo que se puede llamar directamente con Calculadora.sumar(5, 3) sin crear una instancia de Calculadora.

Consideraciones sobre static en Dart

  • Los miembros static solo pueden acceder a otros miembros static dentro de la clase.
  • No es posible sobrescribir un método static en una subclase.
  • Los miembros static pueden ser útiles para definir constantes, variables compartidas o utilidades generales en una clase.

Referencias

Para más información sobre static en Dart, visita la documentación oficial de Dart.

Etiquetas:
dart
Compartir:
Creado por:
Author photo

Jorge García

Fullstack developer