Maison  >  Article  >  Java  >  Comment implémenter la programmation orientée objet en Java

Comment implémenter la programmation orientée objet en Java

王林
王林avant
2023-04-29 19:10:051369parcourir

1 : Il est permis de payer des références de sous-classes à des objets de la classe parent, mais les membres de la sous-classe qui ne sont pas hérités de la classe parent ne seront plus visibles.

Exemple :

Bus bus=new Bus();  Car car=bus;

Mais l'instance de voiture ne peut pas faire référence à des champs non hérités dans le bus, comme le nombre de personnes chargées.

2 : this et super

this fait référence à une variable ou méthode de la classe actuelle, et super fait référence à une variable ou méthode de la classe parent directe de l'objet actuel

3 : Polymorphisme

Le même nom peut avoir plusieurs états d'implémentation Au sein de la même classe, vous. peut avoir une liste de paramètres avec le même nom. Différentes méthodes, les sous-classes peuvent également avoir des variables et des méthodes avec le même nom que la classe parent.

1) Override, lorsqu'une sous-classe hérite d'une fonction sans paramètre du même nom de la classe parent, la méthode nouvellement écrite de la sous-classe remplace la méthode de la classe parent (le type de retour doit être le même ) #🎜🎜 #

2) La surcharge hérite de la fonction paramétrée du même nom de la classe parent, et les paramètres de la méthode sont appelés surchargés lorsque les paramètres sont différents, afin que la méthode ait ses propres caractéristiques.

3) Écrasez la méthode portant le même nom que la classe actuelle. Il peut y avoir plusieurs méthodes portant le même nom dans la même classe, qui sont déterminées par les différents nombres et types de paramètres qui leur sont transmis. . Quelle méthode.

Le remplacement et la surcharge concernent les classes parentes, et la réécriture concerne les sous-classes.

4 : Définition de classe abstraite

Les classes abstraites peuvent avoir leurs propres données membres, des méthodes membres non abstraites, ou avoir une méthode abstraite, abstraite La méthode n’a que la partie définition de fonction et aucun corps de fonction.

Lorsqu'une sous-classe hérite d'une classe abstraite, elle doit implémenter toutes les méthodes abstraites.

5 : Interface

Java ne prend en charge que l'héritage unique Afin d'obtenir un héritage multiple, une interface est conçue. Une classe ne peut avoir qu’une seule classe parent directe, mais peut implémenter plusieurs interfaces.

Les méthodes dans les interfaces peuvent avoir des listes de paramètres et des types de retour, mais n'ont pas de corps de méthode.

L'interface peut contenir des champs, mais ils seront déclarés comme statiques et finaux

Les champs de l'interface ne peuvent être stockés que dans la zone de stockage statique de l'interface , et n'appartient pas à cette interface.

Les méthodes de l'interface sont publiques

Extendez une interface pour générer une nouvelle interface à l'aide du mot-clé extends, et pour implémenter une interface, utilisez Implements.

#🎜 🎜#java Les méthodes d'interface ne peuvent être qu'abstraites et publiques. Les interfaces Java sont plus abstraites que les classes abstraites Java.

6 : La différence entre les interfaces et les classes abstraites

1) Les classes abstraites peuvent fournir des méthodes d'implémentation, les interfaces ne le peuvent pas. Si vous ajoutez une nouvelle méthode à une classe abstraite, toutes ses sous-classes obtiendront cette méthode en même temps, mais pour l'interface, toutes les classes qui implémentent cette interface doivent implémenter cette méthode.

2) Une classe abstraite ne peut en hériter qu'une, mais peut implémenter plusieurs interfaces.

"Mode d'adaptation par défaut" : L'interface java est en haut, suivie de la classe abstraite.

3) Les interfaces peuvent être imbriquées, soit par une classe, soit par une interface.

7 : Classe statique

est une classe qui définit des méthodes statiques, des variables statiques et des blocs de code statiques. Les classes statiques ne peuvent pas être instanciées et tous les membres sont statiques. Cela revient à dire au compilateur que cette méthode peut être utilisée sans créer d'objet de ce type. Les classes statiques doivent généralement être instanciées avant de pouvoir être exploitées. Les classes statiques sont chargées en mémoire au moment de l'exécution, elles n'ont donc pas besoin d'être initialisées et n'ont aucune instance, elles ne peuvent donc pas être utilisées à l'intérieur de la classe.

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:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer