Java pour les développeurs Android

Tester ses connaissances sur l'héritage

TESTEZ LINKEDIN LEARNING GRATUITEMENT ET SANS ENGAGEMENT

Tester maintenant Afficher tous les abonnements
Suivez un petit test de connaissances sur l'héritage et son principe de fonctionnement. Les questions reposent sur différents cas concrets.
05:09

Transcription

Dans cette vidéo, nous allons faire un petit quiz pour bien comprendre le principe de pointeur et d'héritage. Je commence, je crée un élève. Je l'appelle Jean Jean et il est en classe de 3ème. Je l'affiche, on appelle la méthode Afficher, il m'écrit élève : Jean Jean 3ème. Commençons les petites questions. Si j'écris ceci : « PersonneBean, PersonneBean = New PersonneBean », si j'écris ça, qu'est-ce qu'il va y avoir à la console ? Effectivement, le nom et prénom, pas la matière, ce n'est pas un élève. Si j'écris ceci, je vais l'écrire en commentaire car le compilateur détecte certaines erreurs. Si j'écris ceci. Est-ce que c'est bon ou pas, selon vous ? Et si c'est bon, qu'est-ce que ça va afficher dans la console ? Est-ce que ça va appeler la méthode Afficher de Personne ou celle d’Élève ? Est-ce que ça va afficher sa classe ? Au niveau compilation, on ne peut pas déclarer deux variables au nom identique dans une même méthode, donc la compilation est bonne. J'ai un pointeur qui doit pointer vers une personne, la classe élève étant, à la fois, de type élève et de type personne, donc c'est bien une personne, donc ma variable PersonneBean pointe bien vers une personne. Ici, je tente d'afficher, si je fais Ctrl+clic, j’atterris sur la méthode Afficher de la classe Personne. Là, j'ai un petit rond qui m'indique que ma méthode a été surchargée. Je clique et il me propose les deux surcharges existantes de ma méthode. Je vais prendre celle d'ElèveBean, j’atterris sur la méthode Afficher d'ElèveBean. Ce petit rond me permet de repartir dans l'autre sens, voir où est-ce qu'elle a été écrite. Je lance. Et oui, on a bien la classe. Pourquoi on a bien la classe ? Simplement parce que PersonneBean, on demande de l'afficher, on va à l'adresse pointée, là, c'est un élève, vu qu'on a créé un élève, donc on va appeler la méthode Afficher de la classe élève. On continue, si maintenant j'écris ça. Qu'est-ce qu'il va se passer selon vous ? Est-ce que ça va compiler ? Va-t-on appeler la méthode Afficher de la classe Élève ou Personne ? Cela ne compile pas. Élève est un pointeur vers un élève, il doit donc pointer vers un élève. Personne n'étant pas de type Élève mais uniquement Personne, le compilateur nous le refuse, il indique que le typage n'est pas bon. Alors, autre version. Est-ce que ça compile ou pas ? Pour les mêmes raisons, ça ne compile pas, un enseignant n'est pas un élève. On ne peut pas faire pointer notre élève vers un enseignant. C'est le principe d'un langage typé. Autre exercice. J'ai un élève, je prends un pointeur d'une personne, et je lui mets un élève dedans. Et maintenant, mon pointeur vers une personne, avant de l'afficher, je vais le caster en enseignant. Je caste mon PersonneBean en enseignant et j'appelle sa méthode Afficher, que va-t-il se passer ? Je lance, si j'enlève ça, on a une erreur qui s'appelle ClassCastException, qui consiste à dire que ma classe Élève ne peut pas être castée en enseignant. Normal, un enseignant n'est pas un élève. Si je le force en PersonneBean, va-t-il m'afficher que la version Personne ou que la version Élève ? Il m'affiche la version élève, le fait de dire à un pointeur que c'est une personne ne changera pas le New. Nous avons créé un objet élève. Alors, comment puis-je faire si je veux afficher la version de Personne ? C'est-à-dire que j'ai mon élève, mais je veux afficher sa version de Personne. Eh bien, je ne peux pas. C'est le principe, c'est-à-dire que mon élève va choisir les données qui doivent être affichées. Le fait d'avoir surchargé la méthode revient à la remplacer. Il n'y a que dans la classe élève ou on peut faire appel à la méthode Afficher de Personne, mais en dehors, dès le moment où on travaille avec un élève on est obligé d'utiliser la méthode Afficher d'élève. Voilà pour ce petit quiz. J'espère qu'il a réussi à vous éclairer sur la notion de pointeur de création de classe et d'héritage.

Java pour les développeurs Android

Prenez en main la syntaxe et les concepts de Java pour vos développements d’applications pour Android. Abordez les variables, les chaînes de caractères, les conditions, etc.

7h01 (65 vidéos)
Aucun commentaire n´est disponible actuellement
 
Logiciel :
Spécial abonnés
Date de parution :24 avr. 2017

Votre formation est disponible en ligne avec option de téléchargement. Bonne nouvelle : vous ne devez pas choisir entre les deux. Dès que vous achetez une formation, vous disposez des deux options de consultation !

Le téléchargement vous permet de consulter la formation hors ligne et offre une interface plus conviviale. Si vous travaillez sur différents ordinateurs ou que vous ne voulez pas regarder la formation en une seule fois, connectez-vous sur cette page pour consulter en ligne les vidéos de la formation. Nous vous souhaitons un excellent apprentissage avec cette formation vidéo.

N'hésitez pas à nous contacter si vous avez des questions !