‫Bon retour et cette vidéo, tout tourne autour de l'héritage, et nous allons continuer et créer
‫une classe que je vais juste appeler post, donc une nouvelle classe et ça va être un post.
‫Imaginez donc qu'il s'agisse d'une publication sur les réseaux sociaux, telle qu'une publication Twitter ou Facebook ou tout autre type de
‫publication.
‫Et l'idée est que je veux hériter de la publication et que je veux créer quelque chose comme une publication d'image ou plus
‫tard une publication vidéo.
‫Et ce genre de choses va nous permettre de comprendre un peu mieux le concept d'héritage.
‫Et vous pouvez l'appliquer à différents objets dans différentes situations à l'avenir.
‫Donc tout d'abord, une publication a une variable, que je vais rendre privée statique dans l'ID de publication actuel.
‫Donc celui-ci va être un champ de ce poste et il est statique.
‫Il est donc également disponible en dehors de cet article et il sera créé une fois l'application lancée.
‫Droit.
‫Donc, ce que nous pouvons faire, c'est tout d'abord créer des propriétés.
‫Et maintenant, l'idée derrière les propriétés, comme vous le savez, est qu'elles vous donnent plus d'informations sur
‫l'objet.
‫Droit.
‫Donc dans notre cas, si je crée un objet de poste, il y a certaines informations que nous voulons vraiment avoir.
‫Par exemple, nous voulons connaître l'ID ainsi qu'un edman, en tant que programmeur, pas tant qu'un utilisateur et un utilisateur ne sont pas
‫intéressés par l'ID de la publication, mais en tant qu'administrateur ou en tant que programme que vous devriez être car chaque
‫publication devrait être identifié et il doit avoir un identifiant unique.
‫Nous allons donc avoir des identifiants, nous avons besoin d'un titre.
‫Ainsi, par exemple, la publication a un titre, peut-être une description ou un texte, quelque chose comme ça.
‫Ensuite, nous devons savoir qui a envoyé ce message et s'il doit être public ou non.
‫Bien sûr, il y a beaucoup plus à savoir sur la publication, donc il peut y avoir beaucoup plus de propriétés
‫dans la publication, mais nous allons rester simples pour le moment.
‫Je vais donc créer les propriétés protégées ici.
‫Et nous n'avons pas encore utilisé de propriétés protégées.
‫Mais au final, protect signifie que cela ne peut être utilisé que par cette classe, mais une classe post et toutes les classes
‫dérivées.
‫Donc des classes qui dérivent de la poste.
‫Je vais donc créer le premier, qui sera l'ID.
‫Donc int i d et nous allons utiliser get et set.
‫Ensuite, une autre propriété, je vais donc utiliser un accessoire ici et cela devrait être une
‫chaîne et je vais l'appeler titre et comme avant, il devrait être protégé, puis notre propriété et je vais utiliser une chaîne
‫à nouveau et celui-ci sera envoyé par nom d'utilisateur.
‫Alors qui l'a envoyé ?
‫Et il sera également protégé.
‫Et enfin, une propriété appelée est publique.
‫C'est donc un booléen car il ne peut avoir que deux valeurs.
‫Donc, soit c'est public, soit ce n'est pas public.
‫Nous avons donc simplement ces propriétés.
‫Droit.
‫Alors maintenant, nous créons un constructeur par défaut et il y a quelque chose à savoir sur le constructeur par défaut
‫s'il est dérivé, si une classe brouillon n'invoque pas explicitement un constructeur de clause de base, le constructeur par défaut
‫est appelé implicitement.
‫C'est pourquoi nous en créons un ici.
‫Nous créons donc une publication publique.
‫Et maintenant, ce poste ira bien, car nous n'obtenons aucun paramètre ici.
‫Il sera défini ou nous en définirons les valeurs ici.
‫Ce sera donc zéro.
‫Ensuite, le titre est, par exemple, mon premier message ou peut-être avec des espaces vides.
‫Premier post comme ça, alors c'est public ?
‫Eh bien, disons vrai parce que nous voulons le voir et ensuite envoyer par nom d'utilisateur.
‫Bien envoyé par moi.
‫Donc l'intimé dans cette affaire.
‫Donc, chaque fois que nous créons un article maintenant, ce sera juste cet article ici.
‫Ce sera donc mon premier post.
‫À ce moment-là, je veux avoir une autre instance, un constructeur qui a plusieurs paramètres.
‫Je veux donc créer des messages où je peux réellement définir ces choses.
‫Je ne définis pas l'ID, mais je peux définir le titre.
‫Je peux dire si c'est public et si c'est envoyé par quel nom d'utilisateur.
‫Vous pouvez donc imaginer cela.
‫Disons que vous écrivez un petit programme de médias sociaux et que vous souhaitez avoir la possibilité de publier, puis
‫vous devez envoyer ces informations chaque fois que vous créez un message.
‫Ainsi, l'utilisateur crée un message et obtient un ID défini automatiquement, puis il obtient automatiquement un titre défini
‫en fonction de ce que l'utilisateur a entré.
‫Il est public en fonction de ce que l'utilisateur a coché, qu'il ait décidé de le rendre public ou non, et
‫il est envoyé par lui.
‫Ce ne sont donc que des données qui sont transmises lors de la création de chaque publication.
‫Créons maintenant un constructeur d'instance qui a trois paramètres.
‫Je vais donc créer un message public et ici, je vais utiliser la chaîne title bool is public et la chaîne
‫envoyée par nom d'utilisateur.
‫Et ici, je vais définir l'ID et pour cela j'aurai besoin de quelque chose.
‫Je vais donc le mettre à zéro maintenant.
‫Mais j'aurai besoin d'une méthode supplémentaire qui créera toujours un nouvel identifiant pour chaque poste.
‫Nous verrons comment cela fonctionne dans une seconde.
‫Donc ce titre va être le titre que cet envoyé.
‫Mon nom d'utilisateur va être envoyé par nom d'utilisateur avec une lettre non conservée ici et ce qui est
‫public va être public et non la propriété, mais ce paramètre.
‫Alors maintenant, j'ai dit que je ne veux pas que ce soit zéro.
‫L'idée doit être unique.
‫Le meilleur moyen est donc de créer une méthode qui va être protégée et qui s'appelle get next.
‫Ce que cela fera, c'est qu'il renverra simplement l'ID suivant, ce qui signifie l'ID de poste actuel et ici, nous
‫incrémentons avant cela.
‫Donc à chaque fois qu'il est appelé, il va s'incrémenter de un.
‫Donc celui-ci ici, cet ID de poste actuel sera augmenté d'un.
‫Alors maintenant, au lieu de définir zéro ici, nous allons appeler la méthode d'identification suivante ou obtenir la méthode d'identification suivante.
‫Maintenant, que voudriez-vous avoir d'autre dans un tel programme où vous pouvez poster quelque chose alors que je suppose que
‫la capacité d'ajuster un message?
‫Donc, pour l'instant, nous avons créé un message et nous serions assez mécontents si nous ne pouvions pas modifier ce message.
‫Et bien, c'est quelque chose qui arrive réellement.
‫Et je pense que Snapchat que vous créez une image et puis c'est là, vous pouvez éditer cette image.
‫Je ne sais pas si vous pouvez modifier le texte, mais ici, nous voulons pouvoir modifier le texte, nous allons donc
‫créer une nouvelle méthode, une mise à jour publique nulle, et cela devrait prendre en compte le titre.
‫Et le bol est public car si vous y réfléchissez, qu'est-ce que l'utilisateur devrait pouvoir mettre à jour ?
‫Il ne devrait pas être en mesure d'identifier l'identifiant, ni de mettre à jour le nom d'utilisateur car il est envoyé par
‫lui.
‫Il a donc un nom d'utilisateur et cela ne devrait pas avoir d'impact sur la mise à jour d'un article.
‫Donc ici, nous allons juste mettre à jour le message et cela signifie que nous allons seulement changer le titre et
‫changer le booléen, c'est-à-dire s'il est public ou non.
‫Et ici, nous disons simplement que ce titre va être un titre et que ce qui est public va être
‫aussi public que nous l'avons ici.
‫Un post post est un plan tandis que cette classe est un plan de toute instance de post.
‫Donc, chaque fois que nous publions quelque chose qui est ce soi, cette instance est la publication et si nous modifions son titre, nous
‫modifions le titre de cette publication spécifique.
‫Et si nous changeons, que ce soit public ou non, nous changeons la publicité de ce poste spécifique.
‫OK, donc ça nous permet de mettre à jour le titre et sa publicité d'un post existant.
‫Alors maintenant, le prochain que je veux créer est un remplacement de méthode virtuelle de deux chaînes héritées du
‫système de cet objet.
‫Donc système, cet objet est une classe qui vient ici dans système.
‫On peut donc l'utiliser.
‫C'est dans C dièse et nous pouvons simplement l'utiliser.
‫Et il existe une méthode appelée à chaîne ou à partir de là, nous pouvons appeler la méthode à deux chaînes.
‫Donc, system, l'objet a une méthode à deux chaînes, et nous voulons
‫la remplacer car chaque classe, donc notre classe également, hérite de cette classe d'objet.
‫Donc système, cet objet est une classe dont nous pouvons hériter.
‫Donc ici, cet objet, par exemple, nous pouvons hériter de cela, ou nous faisons en fait chaque classe hérite de cela.
‫Alors maintenant, ce que nous pouvons faire, c'est remplacer l'une de ses méthodes.
‫Donc chaîne de substitution publique et deux chaînes, comme vous pouvez le voir, il propose déjà cela.
‫Il dit donc renvoie la chaîne qui représente l'objet actuel quelque chose qui se trouve dans la classe
‫d'objets.
‫Et comme vous pouvez le voir, il y a quelque chose qui s'appelle Return Bayes to string.
‫La classe de base a donc une méthode à deux chaînes.
‫Et si nous ne faisons que cela, alors cela ne signifiera pratiquement rien car nous utiliserons de toute
‫façon la méthode à deux chaînes de la classe de base.
‫Mais nous pouvons les modifier afin de pouvoir les ajuster au lieu de retourner ce que la classe de base retournerait.
‫Nous voulons faire notre propre truc.
‫Nous allons donc utiliser une chaîne de ce format afin de formater une chaîne, qui contiendra certaines
‫informations.
‫Donc ça va être l'idée, ça va être le titre et qui l'enverra.
‫Donc je vais juste utiliser ce genre d'information comme ça.
‫Ce sera donc cette pièce d'identité.
‫Donc l'idée ensuite c'est le titre et enfin celui qui est envoyé par nom d'utilisateur.
‫C'est donc ce qui va revenir.
‫Ainsi, chaque fois que nous utiliserons une chaîne, cela ne renverra pas simplement des informations sur l'objet, mais
‫le renverra dans le format standard ou dans notre format que nous avons créé.
‫C'est donc notre format, n'est-ce pas.
‫Donc.
‫Créons un objet de cette classe, alors allons de l'avant dans notre programme, puis créons ici un
‫article.
‫Donc, le post un est un nouveau post, et ici je peux entrer des informations où je peux les laisser.
‫Donc si je le laisse, c'est le constructeur par défaut qui sera appelé.
‫Alors celui là.
‫Et si je ne le fais pas, alors un autre sera appelé.
‫Alors disons que j'ai posté quelque chose.
‫Merci pour les voeux d'anniversaire.
‫Alors tout le monde m'a souhaité un joyeux anniversaire.
‫Donc je vais juste dire merci beaucoup et je veux y arriver parce que je veux que mes amis le voient donc
‫ça devrait être public.
‫Et puis Dennis Pan, Utah est celui qui l'envoie.
‫Bien sûr, nous pourrions avoir une classe d'utilisateurs qui s'occuperait de toute la gestion et nous pourrions simplement vérifier quels utilisateurs se sont connectés ou
‫quoi que ce soit d'autre.
‫Mais pour l'instant, nous utilisons simplement une chaîne codée en dur ici.
‫Ce sera donc Dennis Bunnytown.
‫C'est donc un nouveau post que nous avons ici.
‫Et maintenant, nous pouvons aller de l'avant et écrire cela sur la console.
‫Alors S. W. et je vais dire poste point à chaîne et ici, bien sûr, le poste un.
‫Donc notre instance de poste.
‫Donc, celui-ci est notre instance de publication.
‫Et j'ai appelé le post un et ça va écrire quelque chose sur une console.
‫Et comme nous voulons voir ce que c'est, nous devons nous réaligner ici.
‫Donc, nous voulons juste garder la console ouverte pour que nous voyions ce qui se passe là-bas et que nous soyons, comme
‫vous pouvez le voir, un, merci pour l'anniversaire, qui est de Dennis Pennetta.
‫Et celui-ci est l'idée de ce post.
‫Cela signifie donc que notre poste ici.
‫Celui-ci obtient un nouvel identifiant et le nouvel identifiant sera zéro plus plus un ou plus un, ce qui signifie que ce
‫n'est qu'un.
‫C'est pourquoi nous obtenons celui-ci ici.
‫Donc l'idée est une, alors c'est de poster des infos.
‫Et c'est lui qui l'a envoyé, Pontotoc.
‫Alors maintenant, nous avons un article et maintenant allons de l'avant et utilisons l'héritage, car jusqu'à présent, à l'exception peut-être
‫de ces deux chaînes ici, il n'y a en fait aucun héritage.
‫Donc en fait juste pour vous.
‫Donc, vous savez ce que j'ai dit plus tôt, le remplacement de la méthode virtuelle de la méthode à deux chaînes héritée du
‫système de cet objet.
‫Alors maintenant, créons une nouvelle classe.
‫Et celui-ci sera des publications d'images parce que, jusqu'à présent, nous ne pouvons publier que du texte simple, mais à
‫l'avenir, nous voulons également publier des images.
‫Et maintenant, cette publication d'image devrait être une classe de conduite de notre publication de classe de base, car cette classe ici est une classe très
‫simple et nous voulons aller de l'avant et en hériter.
‫Donc pour hériter d'une autre classe, vous utilisez Kolon puis vous entrez le nom de la classe dont vous
‫souhaitez hériter.
‫Je veux donc hériter de la poste.
‫Et ce que cela me permet, c'est d'utiliser toutes ses fonctionnalités.
‫C'est quelque chose d'assez cool car maintenant il peut utiliser ses propriétés.
‫Je peux utiliser ses variables à l'exception de son constructeur ici.
‫Et ouais.
‫Alors allons-y et prolongeons la publication de l'image.
‫Donc, comme vous le savez, il dérive de post et maintenant il devrait avoir une autre propriété appelée URL de l'image et deux
‫constructeurs.
‫C'est donc ce que je veux ajouter.
‫Donc d'abord, j'ai besoin d'une propriété ici et ce sera une chaîne appelée image.
‫Vous êtes l qui sera l'image que vous URL de la publication de l'image.
‫Alors disons que nous publions quelque chose et qu'il y a une image dedans, alors c'est automatiquement ou devrait
‫être une publication d'image et il doit avoir une URL d'image.
‫Donc, un emplacement où cette image est stockée qui peut être sur nos serveurs ou simplement sur Internet.
‫Donc, quoi qu'il en soit, nous avons celui-ci besoin d'avoir cette URL d'image pour une publication d'image.
‫Créons maintenant une publication d'image publique de constructeur très simple comme
‫celle-ci.
‫Rien d'autre.
‫Comme vous pouvez le voir, il n'y a rien là-dedans.
‫Je ne veux rien faire ici.
‫Et puis j'ai créé un autre post ici, ou un constructeur de post d'image, mais cette fois je veux quelques paramètres ici.
‫Donc, ce sera une chaîne de titre de chaîne envoyée par l'image de chaîne de nom d'utilisateur votre URL et en fait vous êtes
‫L et Boulle est public, donc je veux avoir tout cela.
‫Et maintenant, dans le post d'image, je veux redéfinir l'idée.
‫Cet ID de pensée est égal à l'ID suivant et c'est déjà quelque chose de plutôt cool.
‫D'où vient cette idée et d'où vient cette idée suivante ?
‫Eh bien, ça vient de la poste.
‫Nous prenons donc cette méthode ici, cette méthode protégée.
‫Nous pouvons simplement l'appeler ici.
‫Nous pouvons l'utiliser comme si c'était le nôtre.
‫Nous n'avons donc même pas besoin de dire quelque chose comme post dot get next ID.
‫Nous disons simplement obtenir la prochaine idée.
‫Et la même chose pour cet identifiant.
‫Ainsi, chaque publication d'image a un identifiant, la même chose que la publication elle-même.
‫Et maintenant, c'est aussi vrai pour le titre.
‫Donc le titre sera le titre.
‫Ensuite, ils commencent à envoyer par nom d'utilisateur va être envoyé par nom d'utilisateur.
‫Et enfin, c'est public qui va être est public maintenant.
‫C'est plutôt cool.
‫Nous pouvons utiliser ces choses.
‫C'est génial.
‫Et maintenant, nous avons également notre propre propriété, qui est l'URL de notre image, et nous l'avons ici.
‫Ainsi, chaque fois qu'une publication d'image est créée, l'URL de l'image doit être donnée comme argument.
‫Nous disons donc que cette URL d'image va être l'image que vous URL.
‫Nous avons donc d'un côté celui hérité de la poste.
‫Je vais donc ajouter qu'ici et d'autre part, nous avons celui qui est notre propre membre, donc property image
‫est membre d'Image Post, mais pas de post.
‫Et c'est quelque chose qui est important.
‫Donc, Post ne connaît pas cette URL d'image et cela n'a pas d'importance, mais notre article d'image connaît toutes les
‫propriétés de notre article.
‫C'est donc l'héritage.
‫Maintenant, une petite chose à propos de ce post d'image ici, donc.
‫Les constructeurs sont requis, ces deux-là, car aucun des constructeurs n'appelle une classe de base.
‫Nous n'utilisons donc pas cette base sans appeler le constructeur de la classe de base et le constructeur par
‫défaut et la classe de base est appelée implicitement car nous ne l'appelons pas explicitement ici.
‫Donc ni dans celui-ci et ni dans celui-ci, celui de la classe de base, le constructeur.
‫Donc, ce constructeur par défaut doit être appelé ou il doit y avoir un constructeur de base dans notre publication.
‫C'est pourquoi je l'ai créé, parce que vous vous êtes peut-être demandé pourquoi avons-nous besoin de cela ?
‫Pourquoi est-ce là ?
‫Eh bien, c'est nécessaire car nous ne l'appelons pas explicitement c'est activé et il sera implicitement appelé.
‫Droit.
‫Super.
‫Alors c'est ça.
‫Allons de l'avant dans notre classe de programme et créons l'un de ces messages.
‫Et je vais créer une publication d'image maintenant et ce sera une nouvelle publication d'image et vous en donnerai le
‫nom.
‫Je vais l'appeler Image Post One.
‫Ce sera un nouveau post d'image.
‫Et je vais vérifier mes nouvelles chaussures parce que j'en ai acheté de nouvelles et elles sont vraiment géniales.
‫Et qui l'envoie ?
‫Eh bien, alors c'est super pénétrable.
‫Le buzz autour de ses nouvelles chaussures.
‫Et bien sûr, il doit avoir un lien pour ces images alors qu'il vient de télécharger l'image.
‫Mais l'image elle-même a un lien car elle est stockée quelque part dans notre stockage, donc ou dans nos serveurs.
‫Ce sera donc un https sécurisé.
‫Et je vais juste truquer un lien ici.
‫Je vais juste appeler ça des images, des chaussures point com et bien, il l'a rendu public.
‫C'est donc vrai.
‫Et mettons-le sur la ligne suivante pour qu'il soit plus facile à lire.
‫Alors maintenant, nous avons notre article d'image.
‫Et ce que nous pouvons faire avec la publication d'image maintenant, c'est d'écrire à nouveau quelque chose sur la console pour voir ce qui
‫se passe.
‫Et je vais juste appeler image post un point à chaîne, et c'est encore quelque chose qui est plutôt cool.
‫Nous appelons donc cette méthode à deux chaînes sur notre image.
‫Publiez-en un.
‫Et voyez-vous une méthode de chaîne ici?
‫Je ne.
‫Et c'est cool parce qu'on prend celui de notre poste.
‫Nous héritons donc de post et maintenant nous prenons sa méthode, qui est appelée string.
‫Et si nous exécutons cela.
‫En fait, nous devons arrêter de l'exécuter.
‫Parce qu'on ne le verra pas, il y a une lecture et c'est parti.
‫Nous devons donc prendre cette ligne rouge et la poster ici.
‫Alors exécutons-le à nouveau.
‫Et ça dit, regarde mes nouvelles chaussures par Dennis Punnet.
‫Mais où est le lien que je dois lier ?
‫Allez, donne moi le lien.
‫Eh bien, ce n'est pas là parce que la méthode à deux chaînes de notre article ne connaît pas les liens.
‫Il n'a aucune idée des liens.
‫Peu importe quels liens.
‫Il n'en a pas besoin.
‫Alors un petit défi pour vous.
‫Et c'est ainsi que nous allons terminer la vidéo.
‫Pour l'instant, veuillez créer une méthode à deux chaînes dans notre publication d'image qui nous informe également sur le lien.
‫D'accord, j'espère que vous l'avez essayé, alors ce que je vais faire, c'est rester simple.
‫Je vais copier les deux chaînes d'ici dans votre article d'image et je vais changer un peu le
‫format.
‫Je vais ajouter une petite déclaration ici, donc aussi, ça va être le lien et trois vont toujours être
‫l'utilisateur, donc nous avons besoin du lien ici pour qu'ils commencent à imager votre URL Karma.
‫La commande est donc Edem, intitulez votre URL puis envoyée par utilisateur.
‫Donc, si vous faites cela, nous supplantons la classe de base, nous supprimons donc les deux chaînes de notre message qui
‫ont surchargé du système cet objet.
‫Vous pouvez donc voir que vous pouvez l'outrepasser et l'outrepasser et ainsi de suite, et nous verrons où se trouve la limite ou comment
‫nous pouvons la limiter.
‫Alors maintenant, exécutons-le.
‫Et nous pouvons voir mes nouvelles chaussures, voici le lien, Dennis, donc je peux cliquer sur le lien dans le compte de
‫la console.
‫Mais généralement je pouvais cliquer sur le lien et je pouvais voir l'image ou mon outil.
‫Mon application, par exemple, pourrait lire ce lien et afficher l'image.
‫D'accord.
‫C'est donc un premier aperçu de l'héritage qui était une longue vidéo.
‫Je sais que.
‫Et l'héritage est bien plus que cela.
‫Et nous examinerons des choses beaucoup plus cool.
‫Mais tout d'abord, nous allons relever un défi dans la prochaine vidéo.
‫Et à bientôt dans la prochaine vidéo.