CSharp #13 - héritage

  Рет қаралды 12,179

FormationVideo

FormationVideo

Күн бұрын

Пікірлер: 42
@maestro122000
@maestro122000 3 ай бұрын
Très belles explications. Moi qui vient du Java, je n'ai pas eu du tout du mal à comprendre. C'est la syntaxe qui change toute simplement. La différence fondamentale est peut-être dans la la façon de gérer les accesseurs (getters) et les mutateurs (setters) à travers un attribut public mandataire (une propriété). C# est en fait le langage Java amélioré :-)!
@formation-video
@formation-video 3 ай бұрын
Merci de ton retour. Et oui, C# a une approche basée sur des propriétés là où Java reste sur un fonctionnement plus historique en encapsulant dans des méthodes (get/set)
@fayepapamamadou9332
@fayepapamamadou9332 Жыл бұрын
Bonjour. Sur Visual Studio, l'Intellisense m'enlève toujours le mot clé this dont j'étais habitué en php. A t-il toujours un intérêt aujourd'hui en C# ? Cordialement.
@formation-video
@formation-video Жыл бұрын
Bonjour, généralement, il est facultatif, ce qui explique pourquoi ton éditeur le retire, mais tu fais comme tu veux. Si tu veux l'utiliser, continue de l'utiliser 👍
@julesfradin
@julesfradin Жыл бұрын
Je ne comprends pas bien la différence entre l'utilisation de 'virtual + override' (method hiding/shadowing?) et de 'new' (method overriding?). Visuellement ça m'a donné le même résultat mais j'imagine que ce n'est pas process de la même manière. Merci !
@formation-video
@formation-video Жыл бұрын
Peux-tu donner les temps de la vidéo auxquels tu fais référence ?
@YoussefJassim
@YoussefJassim Жыл бұрын
Merci beaucoup pour tes efforts, C# en mode easy...
@formation-video
@formation-video Жыл бұрын
Bonne continuation sur ce cours 👋
@calou6270
@calou6270 3 жыл бұрын
Merci pour toutes ces vidéos :D
@formation-video
@formation-video 3 жыл бұрын
🙂
@KuraYami...
@KuraYami... 3 жыл бұрын
Tu connais tellement de programme et de notion c'est incroyable. Quel étude as tu fait ? Et actuellement quelle est ton métier tu est développer ?
@formation-video
@formation-video 3 жыл бұрын
Tu auras tes réponses sur mon site ( jasonchampagne.fr/ ), sections "Bio" et "Travail"
@KuraYami...
@KuraYami... 3 жыл бұрын
@@formation-video ok je vais y fair un tour
@formation-video
@formation-video 3 жыл бұрын
👍
@fayepapamamadou9332
@fayepapamamadou9332 Жыл бұрын
Très belle vidéo. Formidable langage qu'est le C#. Avec Golang et Rust c'est vraiment l'avenir. À propos penses-tu faire une formation sur ces deux autres langages? Merci encore pour ton partage de connaissances et bonne continuation. Cordialement.
@formation-video
@formation-video Жыл бұрын
Oui, c'est prévu : github.com/jasonchampagne/FormationVideo
@melodie14710
@melodie14710 3 жыл бұрын
Bonjour Jason ! Superbe vidéo 😄 Je voulais juste savoir l'intérêt du niveau de protection "protected" ? Je veux dire qu'elle drôle d'idée à mon sens de créer des attributs dans une classe qui ne seront pas accessible pour elle-même. Autant les instancier directement dans la classe dérivée. Merci par avance pour ta réponse. Cela pourra aider certainement d'autres personnes.
@formation-video
@formation-video 3 жыл бұрын
Bonjour, alors la classe a bien accès à ses propres données (même privées), sinon on aurait des données accessibles de nul part, ce qui n'aurait pas de sens. Par contre, pour que les données d'une classe Parent soient accessibles à la classe Enfant (qui en hérite), il faut mettre ses données au niveau d'accès protégé (protected)
@benjaminsultan2371
@benjaminsultan2371 2 жыл бұрын
salut jason merci beaucoup pour tes videos j'ai cree une class 'Animal' que j'ai mis en protected et une class 'Cat' qui en derive mais lorsque je fais cat.name il me dit que c'est inaccessible tu saurais m'aider stp??
@formation-video
@formation-video 2 жыл бұрын
Bonjour, montre l'ensemble du code
@benjaminsultan2371
@benjaminsultan2371 2 жыл бұрын
@@formation-video class Animal { private string _name; protected string Name { get { return _name; } } public Animal(string name) { _name = name; } public virtual void print() { Console.WriteLine($"L'animal {Name} est cree"); } } sealed class Cat : Animal // class qui ne peut pas etre derivee { private int _age; public int Age { get { return _age; } } public Cat(string name, int age) : base(name) { _age = age; } public override void print() { Console.WriteLine($"Le chat {Name} qui a {Age} ans est cree"); } public static Cat operator +(Cat c1, Cat c2) { return new Cat(c1.Name, c1.Age + c2.Age); } } Animal animal = new Animal("hey"); animal.print(); Cat cat1 = new Cat("bonbon", 3); cat1.print(); Console.WriteLine(cat1.Name);
@formation-video
@formation-video 2 жыл бұрын
Ta propriété "Name" doit être définie comme publique, c'est tout son intérêt justement 👍 : pastebin.com/9TdHqr6T
@benjaminsultan2371
@benjaminsultan2371 2 жыл бұрын
@@formation-video et donc comment je fais pour rendre ma class animal protected? si je veux que seulement les class qui derivent d'animal puissent acceder a name?
@formation-video
@formation-video 2 жыл бұрын
Et bien ton premier code était bon : si tu fais appel à la propriété Name depuis la classe Animal (ou Cat), le code compile. En revanche, si tu le fais dans une autre classe : erreur.
@DarkG.H
@DarkG.H 11 ай бұрын
j'ai du mal a saisir ton explication de protected. Tu dit que les champs protected ne sont pas accessibles depuis la classe même, mais seulement depuis les classes dérivées. Mais si tu as une erreur, ce n'est pas plutôt parce que tout comme pour private, les champs protected ne sont pas accessibles depuis les instances? car je me trompes peut être mais ça me parait faux de dire que les champs protected ne sont pas accessible depuis la classe elle-même.
@formation-video
@formation-video 11 ай бұрын
Quel moment de la vidéo exactement ?
@Lanfeust41
@Lanfeust41 7 ай бұрын
@@formation-video A partir de 25'20. Je pense aussi qu'il y a une coquille, sur le site de Microsoft c'est bien précisé en c# : Un membre protégé est accessible dans sa classe et par les instances de la classe dérivée. Merci en tt cas pour toutes les vidéos !
@ala_dine2709
@ala_dine2709 3 ай бұрын
moi aussi je pense la meme chose protected permet a la classe elle meme et ses dirivees de acceder aux proprietes noramle
@tenchigreed
@tenchigreed 3 жыл бұрын
Super bien
@fr530
@fr530 2 жыл бұрын
Salut, ça réponds à mes questions. Étant sur php à la base ça diffère un peu
@formation-video
@formation-video 2 жыл бұрын
Bonjour, oui, ce sera différent dans la syntaxe, mais les concepts restent les mêmes 😉
@kengmokanadomfranc2220
@kengmokanadomfranc2220 3 жыл бұрын
bonjour Jason et merci pour tes vidéos .j'aimerai savoir si je pouvais connecter ma base de donnée avec mon code source écrit en C?? MERCI D'AVANCE
@formation-video
@formation-video 3 жыл бұрын
Oui, il existe une interface pour MySQL en C : dev.mysql.com/downloads/c-api/
@kengmokanadomfranc2220
@kengmokanadomfranc2220 3 жыл бұрын
@@formation-video merci
@didiergnd3934
@didiergnd3934 Жыл бұрын
👍
@khadimdiop8844
@khadimdiop8844 3 жыл бұрын
Merci beaucoup
@formation-video
@formation-video 3 жыл бұрын
De rien =)
@mamoudoundjim6801
@mamoudoundjim6801 Жыл бұрын
tu expliques mal
@formation-video
@formation-video Жыл бұрын
Mince, je ne suis donc pas parfait 👀
@fabricemattel2423
@fabricemattel2423 2 жыл бұрын
bonne video mais trop de blabla ... tu ferais mieux d'aller plus vite a l'essentiel
@formation-video
@formation-video 2 жыл бұрын
C'est malheureusement le genre de remarque très/trop subjective, et propre à chacun. Je fais quoi dans la mesure où on me réclame également davantage de détails sur les vidéos ? Je "bablate" encore plus ? Tout cela pour dire que les vidéos ne sont pas suivies que par des francophones, et par des gens qui ont chacun leur manière d'apprendre et leur rythme d'assimilation. Ce qui peut être évident et clair au premier instant pour les uns ne l'est pas forcément pour les autres. Il faut en tenir compte et ne pas oublier que l'on n'est pas le seul à regarder la vidéo. Alors j'ai envie de dire, si pour toi, c'est assimilé rapidement, c'est tout à ton avantage 🙂 !
@abdulkabir_02
@abdulkabir_02 Жыл бұрын
Soit courtois tu n’es pas seul en plus il fait ce travail sans rémunération. Tu as une fois pensé à te mettre à la place des gens ?
CSharp #14 - surcharge d'opérateurs
20:39
FormationVidéo
Рет қаралды 9 М.
CSharp #19 - gestion d'erreurs
30:39
FormationVidéo
Рет қаралды 7 М.
VIP ACCESS
00:47
Natan por Aí
Рет қаралды 30 МЛН
Algorithmie - Euclide
22:38
FormationVidéo
Рет қаралды 966
CSharp #18 - tableaux
43:20
FormationVidéo
Рет қаралды 13 М.
CSharp #25 - généricité
16:50
FormationVidéo
Рет қаралды 4 М.
CSharp #31 - programmation asynchrone
36:11
FormationVidéo
Рет қаралды 2,7 М.
CSharp #16 - interfaces
21:55
FormationVidéo
Рет қаралды 13 М.
CSharp #26 - piles
20:48
FormationVidéo
Рет қаралды 2,8 М.