0Pricing
Dart Academy · Leçon

Interfaces implicites et implements

Traiter n’importe quelle classe comme une interface

Interfaces implicites et implements est une leçon Dart Academy gratuite sur CoddyKit. Ceci est la leçon 2 sur 4. Tu peux lire la leçon complète ci-dessous gratuitement — puis la pratiquer en direct dans le navigateur avec un éditeur de code intégré et un tuteur IA 24/7. Elle fait partie du parcours d'apprentissage Dart Academy, et ta progression se synchronise sur le web et l'application CoddyKit. Le cours Dart Academy comprend 4 leçons au total.

Chaque classe est une interface

Dans Dart, chaque classe définit implicitement une interface implicite : l'ensemble de ses méthodes et getters publics que les autres classes peuvent s'engager à fournir.

implements ou extends

Avec extends, vous héritez du code. Avec implements, vous adoptez uniquement la structure et devez réécrire vous-même chaque membre.

class Robot implements Greeter {}

Une source d'interface simple

N'importe quelle classe ordinaire peut servir d'interface. Ici, Greeter définit une méthode que d'autres classes peuvent implémenter.

class Greeter {
  String greet() => 'Hi';
}

Implémenter l'interface

Lorsque vous implémentez une classe, aucun de son code n'est repris. Vous fournissez un nouveau corps pour chaque membre qu'elle a déclaré.

class Robot implements Greeter {
  String greet() => 'Beep';
}

Vous devez tout fournir

Omettre ne serait-ce qu'un seul membre provoque une erreur de compilation. implements exige l'interface complète, sans raccourci fourni par l'héritage.

class Robot implements Greeter {} // error: greet missing

Implémenter plusieurs interfaces

Une classe peut implémenter plusieurs interfaces à la fois en les séparant par des virgules, et acquérir ainsi toutes leurs structures.

class Robot implements Greeter, Logger {}

Les classes abstraites comme interfaces

Les classes entièrement abstraites constituent d'excellentes interfaces. Elles déclarent uniquement des signatures, sans transmettre de code hérité aux implémenteurs.

abstract class Greeter {
  String greet();
}

Interface et héritage

Vous pouvez combiner les deux : extends une classe pour son code et implements d'autres classes pour leur structure, dans la même déclaration.

class Robot extends Machine implements Greeter {}

Typer avec l'interface

Une fois qu'une classe implémente Greeter, vous pouvez la stocker dans une variable de type Greeter et appeler greet sans connaître le type concret.

Greeter g = Robot();
print(g.greet());

Les interfaces restent découplées

Comme implements ne copie aucun comportement, votre classe reste indépendante de l'originale. Vous pouvez modifier la source librement sans hériter de ses erreurs.

Les champs deviennent des getters

Un champ d'interface apparaît comme une exigence de getter. Vous pouvez y répondre avec un véritable champ ou un getter calculé.

class Robot implements Named {
  final String name = 'R2';
}

Vérification rapide

Une petite question sur l'implémentation des interfaces.

Récapitulatif

Chaque classe expose une interface implicite. Utilisez implements pour adopter sa structure, réimplémenter chaque membre et même combiner plusieurs interfaces à la fois. 🔌

Questions Fréquemment Posées

La leçon « Interfaces implicites et implements » est-elle gratuite ?

Oui — le texte complet de « Interfaces implicites et implements » est gratuit à lire ici sur le web. Pour la pratiquer de manière interactive (un éditeur de code intégré et un tuteur IA 24/7) et déverrouiller le reste du cours Dart Academy, passe à CoddyKit PRO. Le cours Dart Academy comprend 4 leçons au total.

Qu'est-ce que j'apprendrai dans « Interfaces implicites et implements » ?

Traiter n’importe quelle classe comme une interface Tu pratiques Dart Academy avec du code pratique que tu exécutes directement dans le navigateur, et un tuteur IA 24/7 répond à tes questions au fur et à mesure que tu avances dans la leçon.

Dois-je avoir de l'expérience pour commencer Dart Academy ?

Aucune expérience préalable n'est requise. Dart Academy sur CoddyKit est structuré pour les débutants jusqu'aux apprenants avancés, donc tu peux commencer ici ou depuis le début et avancer à ton rythme. Ceci est la leçon 2 sur 4.

Combien de temps prend la leçon « Interfaces implicites et implements » ?

La plupart des leçons CoddyKit prennent environ 5–10 minutes. Chacune est courte et interactive, tu progresses régulièrement et tu repiques exactement où tu t'es arrêté sur le web et l'app.

Peux-tu écrire et exécuter du code dans cette leçon Dart Academy ?

Oui. Chaque leçon Dart Academy inclut un éditeur de code intégré, tu écris et exécutes du vrai code directement dans ton navigateur et tu reçois des retours IA instantanés — aucune configuration locale requise.

Toutes les leçons de ce cours

  1. Classes et méthodes abstraites
  2. Interfaces implicites et implements
  3. Polymorphisme grâce aux types partagés
  4. La composition plutôt que l’héritage
← Retour à Dart Academy