‫Bon retour et cette vidéo, nous allons continuer avec les propriétés et les setters et les getters, nous avons commencé sur la dernière vidéo où
‫nous avons regardé les setters et les getters et maintenant nous allons utiliser le même code
‫et nous allons pour l'étendre un peu.
‫Nous avons donc vu que nous pouvons utiliser des setters pour définir la valeur d'une variable membre et nous pouvons implémenter notre propre logique,
‫comment nous voulons la définir afin que nous puissions dire, OK, si vous voulez définir la valeur,
‫il doit suivre mes règles afin que nous puissions définir nos propres règles, qui doivent l'être.
‫Suivi et puis nous avons des getas, que nous pouvons également ajuster, donc nous pouvons simplement dire, d'accord, si vous voulez
‫obtenir la variable, je vais vous donner dans ce cas, le résultat de la multiplication de la longueur, de la hauteur,
‫largeur afin que vous puissiez les modifier à votre guise.
‫Voyons maintenant les propriétés et comment tout cela est lié les uns aux autres.
‫Créons donc une propriété et je vais créer une propriété publique appelée height.
‫Et cette hauteur ajustera ma variable de membre de hauteur.
‫C'était donc public avant.
‫Maintenant, je vais le rendre privé afin que nous ne puissions pas accéder à la hauteur de l'extérieur.
‫Alors là, si je veux régler la hauteur, je ne pourrai plus le faire.
‫Maintenant, je vais obtenir cette erreur.
‫D'accord.
‫Utilisons maintenant notre propriété height afin de toujours pouvoir accéder à notre hauteur là-haut.
‫Alors comment fait-on ?
‫Eh bien, nous utilisons tout d'abord cette propriété avec un H majuscule et le début.
‫C'est généralement la façon dont vous utilisez la propriété.
‫C'est une convention et une programmation spéciale.
‫Les propriétés commencent par une majuscule.
‫Et maintenant, ici, je peux créer mon Geter et je peux revenir à la hauteur et je peux créer ma sœur et je peux simplement définir
‫la hauteur ici pour qu'elle soit, par exemple, la valeur du site.
‫Maintenant, quel est ce mot-clé de valeur ?
‫Eh bien, ce que nous faisons ici est fondamentalement la même chose qu'avant.
‫Nous définissons la longueur et obtenons la longueur.
‫Mais maintenant, notre passerelle, pour ainsi dire, est notre hauteur de propriété.
‫Donc si vous souhaitez accéder ou modifier la hauteur mémorisable, vous devez le faire via la propriété height.
‫Alors maintenant, ce que vous pouvez faire, c'est que vous pouvez le définir à la valeur que vous définissez sera définie à la hauteur.
‫Maintenant, à quoi cela ressemble-t-il lorsque nous allons à notre programme maintenant ici, si nous essayons de définir la hauteur ?
‫En accédant directement à la variable membre, nous ne pouvons plus le faire, mais si vous accédez à la propriété, comme vous pouvez le
‫voir, la hauteur est disponible ici et c'est cette icône d'outil que nous pouvons voir ici.
‫C'est donc généralement l'icône que vous avez lorsque vous souhaitez accéder à une propriété.
‫Et vous pouvez voir que cela fonctionne, nous pouvons donc définir la hauteur maintenant.
‫Et si nous le faisons, ceci sera ou ceci pour ici, tout ce qui est derrière ce signe égal ou après ce signe
‫égal.
‫Ce sera la valeur ici à cette valeur et elle sera définie comme la hauteur.
‫Cette valeur est donc à peu près la même chose que la longueur que nous avions auparavant lorsque nous avons créé cette longueur définie.
‫C'est à peu près le même concept, mais nous, c'est juste une façon plus courte de le faire.
‫Droit.
‫Donc vous pouvez voir si nous voulions avoir un setter, nous avions tout ce code.
‫Bien sûr, nous n'avions pas besoin de ce code ici.
‫D'accord.
‫Mais quand même, nous avions tout ce code et maintenant nous avons ce super code court.
‫C'est donc le centre.
‫Bien sûr, ici, nous pouvons également ajuster maintenant, disons que si la valeur est inférieure
‫à zéro, nous définirons notre hauteur sur une valeur négative et sinon, ce sera la hauteur, une valeur égale.
‫OK, allons maintenant à notre programme et maintenant réglez le maximum à moins quatre.
‫Et enfin, définissons cela parce que nous avons créé cette erreur avant, à droite, et maintenant définissons la hauteur
‫à moins quatre et exécutons notre code.
‫Et nous verrons que cela fonctionne donc Lenfest pour ce que c'est avec ce combat.
‫Alors pourquoi est-ce?
‫Même si nous avons défini la valeur à moins quatre ?
‫Eh bien, nous avons dit que si la valeur de la hauteur que vous me transmettez est négative, alors je vais la multiplier.
‫Donc, si la valeur est inférieure à zéro, je vais la multiplier par moins un.
‫Je vais donc le rendre positif à nouveau.
‫Et si c'est positif, alors faites-le simplement ou attribuez-lui une valeur ou si c'est zéro, c'est bien aussi.
‫D'accord.
‫C'est donc ce que nous pouvons faire avec les propriétés.
‫Maintenant, il s'agit d'une implémentation d'une propriété.
‫Bien sûr, vous pouvez également utiliser la propriété sans avoir de variable membre.
‫Donc, ce mémorable que nous avons ici pourrait être quelque chose qui n'est pas du tout requis.
‫Donc, nous pourrions même sauter cela.
‫Disons donc que je ne veux pas définir la largeur en tant que variable membre.
‫Je veux l'avoir comme propriété.
‫Et je vais vous montrer une autre façon de créer une propriété.
‫Et c'est beaucoup, beaucoup plus rapide.
‫Donc, vous utilisez simplement P, R, O, P, puis vous appuyez deux fois et cela créera cette propriété pour vous.
‫Maintenant, vous pouvez simplement entrer pour taper.
‫Et je vais dire, d'accord, ce sera un nombre entier.
‫Ensuite, vous appuyez à nouveau sur Tap et vous pouvez maintenant lui donner un nom.
‫Je vais donc appeler celui-ci avec.
‫Maintenant, que se passe-t-il ici ?
‫Eh bien, c'est un code qui est juste compris par C Sharp et il a même été créé automatiquement pour nous avec notre
‫ID, n'est-ce pas.
‫Dit simplement obtenir un point-virgule défini, point-virgule.
‫Cela signifie donc simplement qu'il s'agira d'un getter et d'un setter par défaut, ce qui
‫signifie simplement que si vous souhaitez accéder avec, vous pouvez simplement y accéder en utilisant la variable with this propriété.
‫Et si vous voulez le configurer, vous pouvez aussi simplement l'utiliser.
‫Alors qu'est-ce que cela signifie dans notre cas?
‫Eh bien, cela signifie que nous pouvons maintenant accéder à cette propriété en attribuant simplement une valeur et si vous souhaitez la
‫contourner.
‫Donc si on veut y accéder.
‫Boîtes avec.
‫Est-ce que la boîte est un point.
‫Avec donc ici, nous pouvons accéder directement à la propriété.
‫Très bien, c'est donc la différence ici.
‫Donc en interne, c'est la même chose que si on créait.
‫Les.
‫Avec revenons à cela avec ayons à nouveau cette variable membre, donc en interne,
‫c'est la même chose que si je créais ce public et avec et je vais commenter cela pour l'instant et j'ai un getter.
‫Alors, je retourne le avec.
‫Ou ils commencent par.
‫Et le centre où j'ai dit qu'ils commencent par la valeur.
‫Très bien, donc c'est vraiment.
‫Il y a.
‫Le code ici est vraiment la même chose que celui-ci, et en interne c'est aussi ce qui se passe une fois
‫que vous compilez le code afin que le compilateur le fasse automatiquement.
‫Pour nous, il dit juste, d'accord, si vous avez cette ligne de code, je vais totalement la traiter comme si
‫c'était ce code que vous avez ici, seulement que c'est beaucoup plus court et c'est beaucoup plus facile de créer ceci
‫code.
‫D'accord.
‫Je vais donc simplement commenter cela, car je le lis comme cette courte approche que nous avons là.
‫Et commentons ceci comme ceci.
‫Et je n'ai plus besoin de cette variable membre, d'accord, car ici nous avons besoin d'un membre verbal parce que j'ai défini le avec
‫et dans ce cas, j'ai dit que la variable membre avec je n'ai pas défini le.
‫Notre économie ne peut pas se régler avec elle-même, donc si j'écrivais plutôt avec.
‫Et si je fais ça maintenant, ce que je crée est un débordement de pile, donc j'essaie constamment de définir quelque chose et ça va être
‫une boucle sans fin ici, ce qui n'est pas bon.
‫C'est pourquoi j'avais besoin de me souvenir de la variable pour cet exemple ici.
‫D'accord.
‫Mais en interne, ça va le traiter comme ça.
‫D'accord, il le traite donc en interne comme le code que nous avons ici, sauf qu'il est beaucoup plus court pour
‫nous.
‫Très bien, alors maintenant un petit défi pour vous, allez-y et créez une propriété pour le volume qui l'entoure
‫comme nous l'avons fait avec la largeur ici.
‫D'accord.
‫Donc à peu près le même exemple que nous avons eu ici, sauf qu'il va ajuster le volume et non la
‫largeur.
‫Alors s'il vous plaît essayez cela, créez votre propre propriété, tapez-la.
‫Ne faites pas l'approche courte ou n'utilisez pas l'approche courte.
‫D'accord.
‫Donc, pour que cela ait un sens, nous devons tout d'abord rendre notre volume privé,
‫puis nous pouvons créer une propriété pour un volume donc public et un volume avec un V majuscule va être obtenu.
‫Retournez le volume puis asseyez-vous.
‫Ce volume est égal à la valeur.
‫C'est donc leur propriété que nous avons créée pour le volume.
‫J'espère que vous avez pu le faire.
‫Bien sûr, vous auriez pu vous débarrasser complètement de ce volume et le créer de la même manière que nous l'avons
‫fait avec le avec c'est beaucoup plus rapide.
‫Mais je voulais juste vous montrer que c'est aussi cool.
‫Maintenant le.
‫Une partie importante ici est que nous pouvons penser à la variable de volume ou à cette propriété et pourquoi ou
‫à quel moment est-il logique de la modifier ou de l'obtenir ?
‫Est-il même logique de faire les deux ?
‫Parce que le volume est quelque chose qui est calculé en fonction de la largeur, de la hauteur et de la longueur.
‫Maintenant, est-il judicieux de régler le volume directement ?
‫Eh bien, non, je le dirais.
‫Je pense que régler le volume n'a même pas de sens du tout.
‫Nous pourrions donc nous débarrasser de tout ce centre et n'avoir qu'un getter.
‫Maintenant, le volume lui-même, on ne règle jamais le volume.
‫C'est toujours calculé.
‫Alors, est-il logique de simplement retourner le volume ?
‫Eh bien, ce n'est vraiment pas le cas, car en fait, ce que nous devrions faire, c'est ici
‫à ce stade, nous devrions calculer que le volume va être la multiplication de la longueur, de la hauteur et par la même chose.
‫Alors maintenant, c'est beaucoup plus significatif.
‫Donc ce que nous retournons avec le volume est beaucoup plus significatif.
‫Si quelqu'un veut obtenir le volume, c'est ce qu'il obtient.
‫Maintenant, bien sûr, nous avons créé un petit bogue ici en bas ou certaines méthodes d'obtention de volume dont nous n'avons plus besoin, et
‫en même temps ici avec now se trouve la propriété à laquelle nous accédons.
‫Ce ne sera pas le cas.
‫Le non verbal n'est plus, parce que nous ne l'avons plus.
‫Et bien sûr, dans le cas de notre programme, nous pouvons maintenant aussi tout ajuster, donc maintenant nous pouvons
‫accéder directement au Wi-Fi et nous pouvons accéder directement à la propriété de volume et non plus à la variable de membre de volume.
‫D'accord.
‫Alors maintenant, faisons une dernière étape ici.
‫Et ça, c'est d'ajouter un constructeur, donc public box.
‫Et.
‫Longueur et hauteur et terminer par.
‫Alors maintenant, si nous créons une boîte, je veux avoir toutes ces valeurs et la longueur
‫qui m'est donnée une fois que la boîte est créée devrait être cette longueur, puis la hauteur qui est donnée cette hauteur devrait être la
‫hauteur.
‫Donc, la hauteur qui est donnée, celle-ci devrait être la hauteur que nous avons ici, qui est notre variable
‫membre.
‫Et notre avec est le dernier.
‫Et c'est la propriété.
‫Alors on l'a dit à la largeur qui nous est donnée.
‫Maintenant, dans ce cas, vous pouvez bien sûr omettre ce mot clé avec lequel vous pouvez simplement dire, car il
‫est également évident que nous parlons de la propriété de cette classe.
‫Vous n'avez donc pas besoin de ce mot clé ici.
‫Maintenant, une chose importante que quelqu'un a demandé et je voulais vraiment que ce soit clair.
‫Donc, cette longueur égale à la longueur fonctionne, mais la longueur est égale à celle-ci.
‫Cette longueur n'a pas de sens.
‫Donc cette ligne ici n'a pas de sens car la longueur est cette partie ici, qui n'est en fait qu'un paramètre et c'est la
‫valeur qui nous est donnée.
‫Nous ne voulons donc pas ajuster la valeur qui nous est donnée, mais nous voulons définir la valeur de notre propriété
‫ou de notre variable membre.
‫Et c'est ce que nous faisons ici.
‫Alors et dans ce cas, c'est ce que nous faisons.
‫Nous définissons la valeur de notre variable membre.
‫Très bien, maintenant utilisons cette boîte pour créer des boîtes maintenant, car maintenant nous n'avons plus besoin de faire tout
‫cela.
‫Nous n'avons plus besoin de définir les valeurs directement, mais nous pouvons les définir dans la création de notre box.
‫Je vais donc simplement attribuer les valeurs trois, quatre et cinq.
‫Donc la longueur est de trois pour cacher ou en fait la hauteur est de quatre.
‫Et avec ce cinq.
‫Et maintenant, si nous l'exécutons, il affichera la largeur et le volume pour nous.
‫Alors que vous êtes avec ce cinq tome est 60.
‫D'accord.
‫Cela semble fonctionner.
‫Maintenant, ce que nous pouvons faire, c'est commencer par accéder à notre propriété.
‫Disons que nous définissons la largeur à dix maintenant et que nous exécutons à nouveau ce code.
‫Et nous venons de jouer avec une fois de plus, nous pouvons donc voir que la valeur par défaut qui a été donnée est
‫imprimée, puis la nouvelle valeur que nous avons définie, nous avons donc défini avec 210 et maintenant il indique la valeur et
‫calcule le avec en conséquence.
‫Donc trois fois, quatre fois dix font 120.
‫Est-ce que le nouveau volume va bien, alors ce que nous avons fait, c'est créer, tout d'abord, un tas de
‫variables sans.
‫Nous les avons rendus privés afin que personne, à l'exception de cette classe elle-même, ne puisse y accéder directement.
‫OK, donc aucune autre classe ne peut y accéder directement.
‫Ils ne peuvent y accéder que via nos propriétés que nous avons créées ou via nos setters et getters.
‫Nous avons donc la longueur définie très longuement.
‫Donc, si quelqu'un veut accéder à la variable de longueur, il doit utiliser la longueur définie et obtenir la
‫longueur.
‫C'est une approche tout à fait valable et vous le verrez.
‫Et oui, avec ces approches, vous pouvez définir la logique que vous souhaitez suivre.
‫Si quelqu'un veut, par exemple, définir une variable ou s'il veut obtenir une variable.
‫Maintenant, une autre façon de le faire est d'utiliser directement une propriété.
‫Donc, si vous utilisez une propriété, vous devez l'appeler avec une majuscule, puis
‫vous pouvez implémenter un getter, etc. Mais vous pouvez également décider d'implémenter uniquement un getter ou
‫d'implémenter uniquement une lettre ou non, bien sûr, en implémentant les deux ici.
‫Vous pouvez également définir les valeurs directement afin de pouvoir définir les variables membres.
‫C'est donc ce que nous avons fait ici.
‫Pour ainsi dire, ajouter une passerelle appelée hauteur, qui est notre propriété à notre hauteur que nous avons créée ici en haut, qui est
‫notre variable membre, ou nous venons de suivre la route directe où nous venons de dire, OK,
‫nous allons diriger.
‫Nous avons ici une propriété implémentée automatiquement très simple et nous n'avons pas besoin d'avoir une variable membre supplémentaire pour cela.
‫Nous aurions pu aller jusqu'au bout pour que toutes ces variables n'aient que des propriétés, nous aurions donc pu le
‫rendre très simple.
‫Mais juste avoir trois propriétés comme.
‫Ceci afin de se débarrasser de tout cela et d'avoir juste un double tap public ou de relations publiques et ce serait la longueur qui serait juste
‫définie, puis la même chose pour la hauteur et ainsi de suite.
‫Mais je voulais juste vous montrer toutes les différentes manières qui existent et toutes les différentes manières que
‫vous verrez.
‫Et la plupart du temps, lorsque vous voyez quelque chose ou lorsque vous utilisez des propriétés, vous verrez la plupart du temps
‫comme ça.
‫Alors, avec la propriété implémentée automatiquement, quel est le moyen le plus simple et le plus rapide ?
‫Vous n'aurez pas besoin d'utiliser toutes les différentes approches que je vous ai montrées qui sont
‫vraiment importantes, vous n'aurez pas besoin d'utiliser toutes les différentes structures, mais dans certains cas, vous devrez mettre en œuvre le
‫centre.
‫Dans certains cas, vous devez mettre en œuvre l'ordre spécifique et maintenant vous savez comment le faire.
‫Bref, si vous avez des questions, pourquoi auriez-vous besoin de cette approche ?
‫Eh bien, ils ne sont utilisés que lorsque vous n'avez pas besoin de logique supplémentaire dans les accesseurs de propriété.
‫Et les définitions de propriété et.
‫Oui.
‫Getters et setters.