Interfaces implícitas e implements
Tratar cualquier clase como una interfaz.
Interfaces implícitas e implements es una lección gratuita de Dart Academy en CoddyKit. Esta es la lección 2 de 4. Puedes leer la lección completa abajo gratuitamente — luego la practicas en el navegador con un editor de código integrado y un tutor de IA 24/7. Forma parte de la ruta de aprendizaje de Dart Academy, y tu progreso se sincroniza en la web y la app de CoddyKit. El curso de Dart Academy incluye 4 lecciones en total.
Toda clase es una interfaz
En Dart, cada clase define discretamente una interfaz implícita: el conjunto completo de sus métodos y getters públicos que otros pueden comprometerse a proporcionar.
implements frente a extends
Con extends hereda código. Con implements solo adopta la estructura y debe volver a escribir cada miembro por su cuenta.
class Robot implements Greeter {}Una fuente sencilla de interfaz
Cualquier clase normal puede actuar como interfaz. Aquí, Greeter define un método que otros pueden implementar.
class Greeter {
String greet() => 'Hi';
}Implementar la interfaz
Cuando implementa una clase, no se transfiere ninguno de sus códigos. Debe proporcionar un cuerpo nuevo para cada miembro que declare.
class Robot implements Greeter {
String greet() => 'Beep';
}Debe proporcionar todo
Omitir siquiera un miembro provoca un error de compilación. implements exige la interfaz completa, sin atajos mediante herencia.
class Robot implements Greeter {} // error: greet missingImplementar varias interfaces
Una clase puede implementar muchas interfaces a la vez si las enumera separadas por comas, incorporando todas sus estructuras.
class Robot implements Greeter, Logger {}Clases abstract como interfaces
Las clases completamente abstract son excelentes interfaces. Solo declaran firmas, por lo que quienes las implementan no heredan ningún código.
abstract class Greeter {
String greet();
}Interfaz más herencia
Puede combinar ambas cosas: usar extends para heredar el código de una clase y implements para adoptar la estructura de otras en la misma declaración.
class Robot extends Machine implements Greeter {}Programar contra la interfaz
Una vez que una clase implementa Greeter, puede guardarla en una variable de tipo Greeter y llamar a greet sin conocer el tipo concreto.
Greeter g = Robot();
print(g.greet());Las interfaces permanecen desacopladas
Como implements no copia ningún comportamiento, su clase permanece independiente de la original. Puede cambiar la fuente libremente sin heredar sus errores.
Los campos se convierten en getters
Un campo de una interfaz aparece como requisito de getter. Puede satisfacerlo con un campo real o con un getter calculado.
class Robot implements Named {
final String name = 'R2';
}Comprobación rápida
Una pregunta rápida sobre la implementación de interfaces.
Repaso
Toda clase expone una interfaz implícita. Use implements para adoptar su estructura y volver a implementar cada miembro; también puede combinar varias interfaces a la vez. 🔌
Aprende Dart con un tutor de IA — gratis
Escribe y ejecuta código real en tu navegador, obtén ayuda instantánea de un tutor de IA disponible 24/7 y continúa donde lo dejaste en la web o en la aplicación.
- Cursos
- 30
- Lecciones
- 120
Preguntas frecuentes
¿La lección «Interfaces implícitas e implements» es gratis?
Sí — el texto completo de «Interfaces implícitas e implements» es gratis para leer aquí en la web. Para practicarla de forma interactiva (editor de código integrado y tutor de IA 24/7) y desbloquear el resto del curso de Dart Academy, actualiza a CoddyKit PRO. El curso de Dart Academy incluye 4 lecciones en total.
¿Qué aprenderé en «Interfaces implícitas e implements»?
Tratar cualquier clase como una interfaz. Practicas Dart Academy con código real que ejecutas directamente en el navegador, y un tutor de IA 24/7 responde tus preguntas mientras trabajas en la lección.
¿Necesito experiencia previa para empezar Dart Academy?
No se requiere experiencia previa. Dart Academy en CoddyKit está estructurado para principiantes hasta estudiantes avanzados, así que puedes empezar aquí o desde el inicio y avanzar a tu ritmo. Esta es la lección 2 de 4.
¿Cuánto tiempo toma la lección «Interfaces implícitas e implements»?
La mayoría de las lecciones de CoddyKit toman alrededor de 5–10 minutos. Cada una es compacta e interactiva, así que avanzas constantemente y retomas exactamente por donde dejaste en la web y la app.
¿Puedo escribir y ejecutar código en esta lección de Dart Academy?
Sí. Cada lección de Dart Academy incluye un editor de código integrado, así que escribes y ejecutas código real directamente en tu navegador y obtienes retroalimentación instantánea de IA — sin configuración local necesaria.
Todas las lecciones de este curso
- Clases y métodos abstractos
- Interfaces implícitas e implements
- Polimorfismo mediante tipos compartidos
- Composición en lugar de herencia