Questions sur POO

Fermé
ikram chouchen
Messages postés
1
Date d'inscription
mercredi 12 mars 2014
Statut
Membre
Dernière intervention
12 mars 2014
- 12 mars 2014 à 14:49
KX
Messages postés
16567
Date d'inscription
samedi 31 mai 2008
Statut
Modérateur
Dernière intervention
4 juillet 2022
- 12 mars 2014 à 18:43
- Quelle est la motivation derrière l'apparition de l'orienté objet ?
- Quelles sont les différences les plus remarquable entre le concepts de l'héritage en java et en c++

1 réponse

walidovich_85
Messages postés
608
Date d'inscription
mardi 12 janvier 2010
Statut
Membre
Dernière intervention
25 octobre 2015
72
12 mars 2014 à 17:57
Bonjour,

La POO décrit avec plus précision le monde réel car elle se repose sur le fait que les objets ont des caractéristiques et des comportements. Alors, la partie conception des données devienne plus claire. avec le temps, les langages ont commencé de basculer vers l'OO, et les développeurs ont remarqué qu'il y'a 3 ou 4 principes commun entre ces langages (qui définissent un langage comme OO):
- Héritage;
- Polymorphisme;
- Encapsulation;
- et l'Abstraction.

Le langages OO sont plus maintenables, réutilisables, facilement concevables...

Pour la différence entre Java et C++ concernant l'héritage ( je suis nul en c++), c que ce dernier permet l'héritage multiple cependant que Java ne le permet pas.

Bonne chance

NB:Java vous permet d'implémenter plusieurs interface.
0
KX
Messages postés
16567
Date d'inscription
samedi 31 mai 2008
Statut
Modérateur
Dernière intervention
4 juillet 2022
2 967
12 mars 2014 à 18:43
"Java vous permet d'implémenter plusieurs interface"
Ce qui est déjà considéré comme de l'héritage multiple, mais il faudrait distinguer différents types d'héritages pour être vraiment précis.

Java autorise l'héritage multiple d'interfaces (ce que ne permet pas C++ vu qu'il n'y a pas d'interfaces) alors que C++ autorise l'héritage multiple de classes que ne permet pas Java.
À noter que Java 8 sort la semaine prochaine et permettra d'aller un peu plus loin avec de l'héritage multiple de code, puisqu'il sera désormais possible de mettre du code dans les interfaces...

Mais pour moi la grosse différence entre C++ et Java c'est que si Java est un langage objet, C++ lui est un langage impératif avec une couche objet. Mais on peut faire du C++ sans faire de classes, ou alors en les utilisant comme des librairies, mais sans imposer une véritable architecture objet, alors qu'en Java tout est objet (ou presque...).
0