Maison Java Javacommencer Trois caractéristiques majeures de l'orientation objet : encapsulation, héritage, polymorphisme

Trois caractéristiques majeures de l'orientation objet : encapsulation, héritage, polymorphisme

Jun 09, 2020 pm 05:30 PM
多态 封装 继承 面向对象

Trois caractéristiques majeures de l'orientation objet : encapsulation, héritage, polymorphisme

Les trois caractéristiques majeures de l'orientation objet : l'encapsulation, l'héritage et le polymorphisme.

Introduction détaillée :

1. Encapsulation

Masquer les propriétés et les détails d'implémentation de l'objet et fournir uniquement un accès public au monde extérieur.

Avantages : Isolez les modifications, facilitez l'utilisation, améliorez la réutilisabilité et la sécurité.

Principe : masquer le contenu qui n'a pas besoin d'être fourni en externe ; masquer les attributs et fournir des méthodes publiques pour y accéder.

(Tutoriel vidéo recommandé : Tutoriel vidéo Java )

2. Héritage

Améliorer la réutilisabilité du code. L'héritage est une condition préalable au polymorphisme.

Remarque :

1. Tous les constructeurs de la sous-classe accéderont au constructeur avec des paramètres vides dans la classe parent par défaut, il y a super() dans la première ligne ; n'est pas un constructeur de paramètre vide. Les fonctions doivent être spécifiées dans les sous-classes ;

2. Dans les constructeurs de sous-classes, vous pouvez utiliser ceci pour spécifier vos propres constructeurs.

3. Le polymorphisme

est une variable de référence définie par une classe ou une interface parent qui peut pointer vers un objet instance d'une sous-classe ou une classe d'implémentation spécifique.

Avantages : Évolutivité améliorée du programme.

Inconvénients : lorsque la référence de la classe parent pointe vers l'objet de la sous-classe, bien que l'évolutivité soit améliorée, seules les méthodes de la classe parent sont accessibles et les méthodes de la sous-classe ne sont pas accessibles, ce qui constitue la limitation. d'accès.

Prérequis : implémentation ou relation d'héritage ; remplacer la méthode de la classe parent.

Tutoriel recommandé : Programme d'entrée Java

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
2 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Repo: Comment relancer ses coéquipiers
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Adventure: Comment obtenir des graines géantes
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Combien de temps faut-il pour battre Split Fiction?
3 Il y a quelques semaines By DDD

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Explication détaillée de l'héritage des fonctions C++ : Comment utiliser le « pointeur de classe de base » et le « pointeur de classe dérivé » dans l'héritage ? Explication détaillée de l'héritage des fonctions C++ : Comment utiliser le « pointeur de classe de base » et le « pointeur de classe dérivé » dans l'héritage ? May 01, 2024 pm 10:27 PM

Dans l'héritage de fonction, utilisez le « pointeur de classe de base » et le « pointeur de classe dérivée » pour comprendre le mécanisme d'héritage : lorsque le pointeur de classe de base pointe vers l'objet de classe dérivé, une transformation ascendante est effectuée et seuls les membres de la classe de base sont accessibles. Lorsqu’un pointeur de classe dérivée pointe vers un objet de classe de base, une conversion vers le bas est effectuée (dangereuse) et doit être utilisée avec prudence.

Table de fonctions virtuelles C++ et implémentation polymorphe, comment éviter le gaspillage de mémoire Table de fonctions virtuelles C++ et implémentation polymorphe, comment éviter le gaspillage de mémoire May 31, 2024 pm 07:03 PM

Les classes de base virtuelles optimisent la surcharge de mémoire des tables virtuelles en permettant l'héritage de plusieurs classes de base sans créer de tables virtuelles supplémentaires. Dans le code optimisé, la classe de base de forme n'a plus de table de fonctions virtuelles et les classes cercle et rectangle partagent la même table de fonctions virtuelles, réduisant ainsi la consommation de mémoire.

TrendForce : les produits de la plate-forme Blackwell de Nvidia permettent d'augmenter la capacité de production CoWoS de TSMC de 150 % cette année TrendForce : les produits de la plate-forme Blackwell de Nvidia permettent d'augmenter la capacité de production CoWoS de TSMC de 150 % cette année Apr 17, 2024 pm 08:00 PM

Selon les informations de ce site du 17 avril, TrendForce a récemment publié un rapport estimant que la demande pour les nouveaux produits de la plate-forme Blackwell de Nvidia est haussière et devrait entraîner une augmentation de la capacité totale de production d'emballages CoWoS de TSMC de plus de 150 % en 2024. Les nouveaux produits de la plate-forme Blackwell de NVIDIA comprennent des GPU de série B et des cartes accélératrices GB200 intégrant le propre processeur GraceArm de NVIDIA. TrendForce confirme que la chaîne d'approvisionnement est actuellement très optimiste quant au GB200. On estime que les livraisons en 2025 devraient dépasser le million d'unités, représentant 40 à 50 % des GPU haut de gamme de Nvidia. Nvidia prévoit de livrer des produits tels que le GB200 et le B100 au second semestre, mais le conditionnement des plaquettes en amont doit encore adopter des produits plus complexes.

Comment l'héritage et le polymorphisme affectent-ils le couplage de classes en C++ ? Comment l'héritage et le polymorphisme affectent-ils le couplage de classes en C++ ? Jun 05, 2024 pm 02:33 PM

L'héritage et le polymorphisme affectent le couplage des classes : l'héritage augmente le couplage car la classe dérivée dépend de la classe de base. Le polymorphisme réduit le couplage car les objets peuvent répondre aux messages de manière cohérente via des fonctions virtuelles et des pointeurs de classe de base. Les meilleures pratiques incluent l'utilisation de l'héritage avec parcimonie, la définition d'interfaces publiques, l'évitement de l'ajout de données membres aux classes de base et le découplage des classes via l'injection de dépendances. Un exemple pratique montrant comment utiliser le polymorphisme et l'injection de dépendances pour réduire le couplage dans une application de compte bancaire.

Taille du boîtier AMD « Strix Halo » FP11 exposée : équivalent à Intel LGA1700, 60 % plus grand que Phoenix Taille du boîtier AMD « Strix Halo » FP11 exposée : équivalent à Intel LGA1700, 60 % plus grand que Phoenix Jul 18, 2024 am 02:04 AM

Ce site Web a rapporté le 9 juillet que les processeurs de la série « Strix » à architecture AMD Zen5 auront deux solutions de packaging. Le plus petit StrixPoint utilisera le package FP8, tandis que le StrixHalo utilisera le package FP11. Source : source videocardz @Olrak29_ La dernière révélation est que la taille du boîtier FP11 de StrixHalo est de 37,5 mm x 45 mm (1 687 millimètres carrés), ce qui est la même que la taille du boîtier LGA-1700 des processeurs Intel AlderLake et RaptorLake. Le dernier APU Phoenix d'AMD utilise une solution de packaging FP8 d'une taille de 25*40 mm, ce qui signifie que le F de StrixHalo

Explication détaillée de l'héritage des fonctions C++ : Comment déboguer les erreurs d'héritage ? Explication détaillée de l'héritage des fonctions C++ : Comment déboguer les erreurs d'héritage ? May 02, 2024 am 09:54 AM

Conseils de débogage des erreurs d’héritage : assurez-vous que les relations d’héritage sont correctes. Utilisez le débogueur pour parcourir le code et examiner les valeurs des variables. Assurez-vous d'utiliser correctement le modificateur virtuel. Examinez le problème des diamants d'héritage causé par l'héritage caché. Recherchez les fonctions virtuelles pures non implémentées dans les classes abstraites.

Explorez la programmation orientée objet dans Go Explorez la programmation orientée objet dans Go Apr 04, 2024 am 10:39 AM

Le langage Go prend en charge la programmation orientée objet via la définition de type et l'association de méthodes. Il ne prend pas en charge l'héritage traditionnel, mais est mis en œuvre par composition. Les interfaces assurent la cohérence entre les types et permettent de définir des méthodes abstraites. Des cas pratiques montrent comment utiliser la POO pour gérer les informations client, notamment la création, l'obtention, la mise à jour et la suppression d'opérations client.

Fonctionnalités avancées PHP : meilleures pratiques en matière de programmation orientée objet Fonctionnalités avancées PHP : meilleures pratiques en matière de programmation orientée objet Jun 05, 2024 pm 09:39 PM

Les meilleures pratiques de POO en PHP incluent les conventions de dénomination, les interfaces et les classes abstraites, l'héritage et le polymorphisme, ainsi que l'injection de dépendances. Les cas pratiques incluent : l'utilisation du mode entrepôt pour gérer les données et l'utilisation du mode stratégie pour mettre en œuvre le tri.

See all articles