Un programme orienté objet est composé d'objets, chaque objet contenant des pièces fonctionnelles spécifiques exposées à l'utilisateur et des pièces d'implémentation cachées. Dans la programmation orientée objet (POO), il n'est pas nécessaire de se soucier de l'implémentation spécifique de l'objet. Dans la programmation structurée traditionnelle, les algorithmes sont d'abord classés et les structures de données sont classées, c'est-à-dire déterminer d'abord comment fonctionner, puis de considérer comment organiser les données pour faciliter le fonctionnement. OOP inverse cet ordre, met d'abord les données, puis considère l'algorithme qui exploite les données.
I. Classe
Les classes sont des modèles et des plans pour construire des objets. En termes simples, il en va de même pour les dessins du bâtiment, tandis que l'objet est équivalent au bâtiment. Le processus de construction d'un objet à partir d'une classe est appelé création d'une instance d'un objet.
Dans Java, la "classe" est définie par la classe de mots clés, suivie du nom de classe. Par exemple:
classe de classe {// contenu du corps de classe}Une classe de personne est définie.
1. Champs et méthodes
Lors de la définition d'une classe, deux types d'éléments peuvent être définis dans la classe: les membres de données et les fonctions membres. Où le membre de données est un objet, qui peut être de tout type. S'il s'agit d'une poignée pointant vers un objet, cette poignée doit être initialisée et connectée à un objet réel via le constructeur. S'il s'agit d'un type de données de base, il peut être initialisé directement à l'emplacement de définition de classe.
Chaque objet conserve un espace de stockage pour ses propres membres de données; Les membres de données ne sont pas partagés entre les objets.
classe de classe {String name; double salaire;} Créez un objet avec le new mot-clé. comme:
Personne p = new personne ();
(1) la valeur par défaut du membre maître
Si un certain type de données de base appartient à un membre de la classe, il n'est pas clair que l'initialisation peut également garantir qu'ils obtiennent une valeur par défaut.
| Type principal | valeur par défaut |
| Booléen | FAUX |
| Carboniser | '/ u0000' (null) |
| octet | (octet) 0 |
| Court | (court) 0 |
| int | 0 |
| long | 0L |
| flotter | 0,0F |
| double | 0,0d |
Si une variable est une variable de membre de la classe, elle sera certainement initialisée pour le type principal, et une attention particulière doit être accordée à la valeur initialisée. Pour les variables locales, certaines valeurs aléatoires seront obtenues, telles que: int x; ne sera pas automatiquement initialisé à 0.
(2) méthode
Les composants de base d'une méthode incluent le nom , la variable indépendante , le type de retour et le corps . La forme de base de la méthode est:
返回类型方法名(/*自变量列表*/) {/* 方法体*/}Le type de retour fait référence au type numérique renvoyé après l'appel de la méthode. Un nom de méthode est l'identification et la référence d'une méthode spécifique. La liste d'arguments répertorie les types et les noms des informations que vous souhaitez transmettre à la méthode.
Dans Java, la méthode est appelée对象名.方法名
1. Utilisez des poignées pour faire fonctionner les objets
Bien que Java soit complètement orientée objet . Cependant, l'identifiant de l'opération pointe en fait vers la " poignée " d'un objet, également connu sous le nom de " référence ". Une poignée peut exister indépendamment, pour ne pas dire que si vous avez une poignée, vous devez avoir un objet correspondant à lui. Par exemple, int i; Définit une variable entière I, ce qui ne signifie pas qu'elle doit avoir une valeur. Par exemple, créez une poignée de chaîne:
String S;
Ici, juste une poignée est créée et aucun objet n'est créé. Étant donné que S ne dispose pas d'un objet qui lui est associé, une exception apparaîtra si S est appelée. Par conséquent, une initialisation est requise lors de la création.
String S = "Hello";
Dans Java, un objet est créé avec le nouveau mot-clé, qui renvoie une référence à l'objet (c'est-à-dire une poignée). donc
String s = new String ("Hello");Un objet String avec du contenu "Hello" a été créé, et la poignée (référence) de l'objet a été remise à S pour enregistrer.
2. Emplacement du stockage de données
1. Registre. La zone d'épargne la plus rapide, située à l'intérieur du processeur. La taille du registre est limitée et la taille est allouée par le compilateur.
2. Stack. Réside dans la zone RAM ordinaire (mémoire d'accès aléatoire), la taille peut être modifiée via le "pointeur de pile". Le déplacement du pointeur de pile vers le bas créera un nouvel espace mémoire; Le montage libérera l'espace mémoire. Lors de la création d'un programme, le compilateur Java doit connaître exactement la "longueur" et le "temps d'existence" de toutes les données stockées dans la pile, et le compilateur génère le code correspondant pour déplacer le pointeur. La poignée de l'objet Java y est stocké, mais l'objet Java n'est pas stocké dans la pile.
3. Heap. Un pool de mémoire à des fins régulières, où les objets Java sont enregistrés. Le compilateur ne sait pas ou ne doit pas savoir combien d'espace de stockage est alloué à partir du "tas de mémoire" ou "tas" et de la durée des données.
4. Stockage statique. Statique fait référence à une position fixe (en RAM). Pendant l'exécution du programme, les données stockées statiquement seront disponibles pour appel à tout moment. Indique qu'un élément spécifique d'un objet est statique par mot-clé statique. Java elle-même ne peut pas être placée dans un espace de stockage statique.
5. Stockage constant. Les valeurs constantes sont généralement placées dans le code du programme et ne changent jamais.
6. Stockage non Ram. Si les données sont entièrement indépendantes d'un programme, elle peut toujours exister lorsque le programme n'est pas en cours d'exécution et se situe dans la portée de contrôle du programme. Par exemple, le streaming des objets et les objets fixes.
2. Objet
Trois caractéristiques principales d'un objet:
• Comportement de l'objet - Quelles opérations peuvent être appliquées à l'objet, ou quelles méthodes peuvent être appliquées à l'objet?
• Statut de l'objet - Comment l'objet réagit-il lors de l'ajout de ces méthodes?
• Identification des objets - Comment identifier différents objets avec le même comportement et l'état?
Le comportement d'un objet est défini par une méthode appelée. Chaque objet contient des informations décrivant la fonction actuelle, qui est l'état de l'objet. L'état de l'objet ne change pas spontanément. Une classe bien conçue ne peut être implémentée qu'en appelant des méthodes. Si l'état de l'objet est modifié sans appels de méthode, cela signifie que l'encapsulation a été détruite.
Encapsulation: une méthode d'implémentation qui combine les données et le comportement dans un package et masque les données des consommateurs de l'objet. La clé de l'encapsulation est que les méthodes de la classe ne doivent pas accéder directement au domaine d'instance d'autres classes. Les programmes interagissent uniquement via les données de l'objet de domaine de la méthode de l'objet.
Les données d'un objet sont appelées champ ou attribut d'instance. Le processus de manipulation des données est appelé méthode. Pour chaque objet spécifique, il existe un ensemble spécifique de valeurs de domaine d'instance (valeurs d'attribut), et l'ensemble de ces valeurs est l'état actuel de l'objet.
Relation entre les classes
Relations courantes entre les classes:
• Dependency ("Use-A"): Une méthode d'une classe manipule les objets d'une autre classe.
• AGLÉGATION ("HAS-A"): Un objet d'une classe contient un objet d'une autre classe.
• Héritage ("IS-A"): est utilisé pour représenter la relation entre spécial et général. Si la classe A étend la classe B (A hérite B), la classe A contient non seulement des méthodes de classe B, mais également des méthodes d'extension.
Un objet ne contient pas réellement un objet, mais se réfère uniquement à un objet.
Dans Java, la valeur de toute variable d'objet est une référence à un objet stocké dans un autre endroit. La valeur de retour du nouvel opérateur est également une référence.
L'article ci-dessus comprend complètement les classes et objets Java est tout le contenu que j'ai partagé avec vous. J'espère que cela pourra vous donner une référence et j'espère que vous pourrez soutenir Wulin.com plus.