Maison Java javaDidacticiel Résumé des fonctionnalités Java

Résumé des fonctionnalités Java

Jul 21, 2017 pm 02:17 PM
特性 相关

1. Héritage (mot clé : extends) : (classe parent enfant)
1. Améliorer la réutilisabilité du code.
2. Créer une relation entre les classes. Ce n’est qu’avec cette relation que nous pouvons avoir les caractéristiques du polymorphisme.

1.1 Variables
Si une variable membre non privée (privée) portant le même nom apparaît dans la classe parent enfant, la classe enfant doit accéder à la variable dans cette classe, l'utiliser, et l'enfant la classe doit accéder au même nom dans la classe parent. Pour les variables, utilisez super.
L'utilisation de super est presque la même que celle de ceci.
Ceci représente une référence à un objet de cette classe.
Une référence à l'objet de classe parent représenté par super.

1.2 Fonctions dans la sous-classe
Lorsqu'une fonction exactement identique à la classe parent apparaît dans la sous-classe,
Lorsque l'objet de la sous-classe appelle la fonction, le contenu de la fonction de la sous-classe sera courir. Tout comme la fonction de la classe parent est remplacée.

Cette situation est une autre caractéristique des fonctions : réécriture (écrasement)

Lorsqu'une sous-classe hérite de la classe parent, elle hérite des fonctions de la classe parent dans la sous-classe, mais bien que la sous-classe ait cette fonction, mais le contenu de la fonction n'est pas cohérent avec la classe parent. Dans ce cas, il n'est pas nécessaire de définir une nouvelle fonction. Utilisez plutôt la fonction de remplacement pour conserver la définition de fonction de la classe parent et réécrire le contenu de la fonction. .

Notes sur l'écrasement :
1. Lorsqu'une sous-classe écrase une classe parent, il faut s'assurer que les autorisations de la sous-classe sont supérieures ou égales aux autorisations de la classe parent avant de pouvoir l'écraser , sinon la compilation échouera. (Si vous n'écrivez pas le modificateur d'autorisation, l'autorisation par défaut se situe entre privée et publique.)
2. Statique ne peut remplacer que statique.

Surcharge et réécriture :
Surcharge : regardez uniquement la liste des paramètres de la fonction du même nom.
Réécriture : le nom de la méthode et le type de retour dans les classes enfant et parent doivent être exactement les mêmes. (C'est-à-dire : le type de retour et le nom de la méthode () doivent être les mêmes)

1.3 Constructeur dans les sous-classes.
Lors de l'initialisation d'un objet de sous-classe, le constructeur de la classe parent s'exécutera également. En effet, le constructeur de la sous-classe a une instruction implicite super() dans la première ligne par défaut

Pourquoi les sous-classes doivent ; accéder au constructeur dans la classe parent.
Étant donné que les sous-classes de données de la classe parent peuvent être obtenues directement, lorsque tous les objets de sous-classe sont créés, vous devez d'abord vérifier comment la classe parent initialise les données. Par conséquent, lors de l’initialisation de l’objet, la sous-classe doit d’abord accéder au constructeur de la classe parent. Si vous souhaitez accéder au constructeur spécifié dans la classe parent, vous pouvez le spécifier en définissant manuellement la super instruction.

Remarque : L'instruction super doit être définie dans la première ligne du constructeur de sous-classe.


Conclusion :
Tous les constructeurs de la sous-classe accéderont par défaut au constructeur de la classe parent avec des paramètres vides.
Parce que la première ligne de chaque constructeur de la sous-classe aura un super();
Lorsqu'il n'y a pas de constructeur avec des paramètres vides dans la classe parent, la sous-classe doit spécifier manuellement les exigences sous la forme d'un super instruction. Accédez au constructeur dans la classe parent.
Bien sûr : la première ligne du constructeur de la sous-classe peut également spécifier manuellement cette instruction pour accéder au constructeur de cette classe. Il y aura au moins un constructeur dans la sous-classe qui accède au constructeur de la classe parent. (Comme this() et super() ne peuvent être placés que dans la première ligne du constructeur, un seul d'entre eux peut exister dans le constructeur.)


Remarque : ne l'utilisez jamais pour obtenir le autre Les fonctions de la classe sont héritées pour simplifier le code. Il doit y avoir une relation entre les classes avant de pouvoir en hériter. L'affiliation est un .
2.finale : finale. comme modificateur.
2.1 Les classes, fonctions et variables peuvent être modifiées.
2.2 Les classes modifiées par final ne peuvent pas être héritées. Afin d'éviter l'héritage, évitez de remplacer les fonctions par des sous-classes.
2.3 Les méthodes modifiées par final ne peuvent pas être remplacées.
2.4 Une variable modifiée par final est une constante à laquelle une valeur ne peut être attribuée qu'une seule fois. Elle peut modifier soit des variables membres, soit des variables locales. Lors de la description des choses, lorsque certaines données apparaissent, les valeurs​​sont fixes. Afin d'améliorer la lisibilité, ces valeurs​​sont nommées. Facile à lire. Cette valeur n'a pas besoin d'être modifiée, la modification finale est donc ajoutée. En tant que constante : la convention d'écriture des constantes est constituée de toutes les lettres majuscules si elles sont constituées de plusieurs mots. Les mots sont reliés par _. (ex : final double PI = 3.14 ; final int SET_ON = 1 ;)
2.5 Lorsqu'une classe interne est définie à un emplacement local dans la classe, elle ne peut accéder qu'aux variables locales modifiées par final.

3. Abstraction :
3.1 Les méthodes abstraites doivent être dans des classes abstraites.
3.2 Les méthodes abstraites et les classes abstraites doivent être modifiées par le mot-clé abstract. (abstract class class name { abstract void method name (); })
3.3 Les classes abstraites ne peuvent pas utiliser new pour créer des objets. Parce que cela ne sert à rien d’appeler des méthodes abstraites.
3.4 Pour utiliser les méthodes abstraites dans une classe abstraite, toutes les méthodes abstraites doivent être réécrites par la sous-classe puis l'objet de la sous-classe peut être appelé. Si une sous-classe ne couvre que certaines méthodes abstraites, alors la sous-classe reste une classe abstraite.
Similitudes et différences entre les classes générales et les classes abstraites : Il n'y a pas beaucoup de différence entre les classes abstraites et les classes générales. Vous pouvez décrire les choses comme vous voulez les décrire, mais il y a des choses incompréhensibles à leur sujet. Ces parties indéterminées, qui sont aussi la fonction de la chose, ont besoin d'apparaître explicitement. Mais le sujet ne peut être défini. Représenté par des méthodes abstraites.
Les classes abstraites ont une fonction abstraite de plus que les classes ordinaires. Autrement dit, les méthodes abstraites peuvent être définies dans des classes.
Les classes abstraites ne peuvent pas avoir de méthodes d'instance.
Spécial : les méthodes abstraites n'ont pas besoin d'être définies dans une classe abstraite. Cela empêche uniquement la classe de créer des objets.
4. Modèle de conception de modèle :
Lors de la définition d'une fonction, une partie de la fonction est déterminée, mais une partie de celle-ci est incertaine, et la partie déterminée utilise la partie incertaine, alors la partie incertaine sera utilisée Partiellement exposée. Ceci est fait par les sous-classes de cette classe.
5. Interface :
La compréhension initiale peut être considérée comme une classe abstraite spéciale. Lorsque les méthodes d’une classe abstraite sont abstraites, alors la classe peut être représentée sous la forme d’une interface.
 class : utilisé pour définir les classes
 interface : utilisé pour définir les interfaces. Une interface est aussi un type. Des fichiers de classe peuvent être générés.

Lors de la définition d'une interface, le format présente :
1. Définitions communes dans les interfaces : constantes, méthodes abstraites. L'émergence des interfaces incarne « l'héritage multiple » sous une autre forme, c'est-à-dire « implémentations multiples ».
 2. Les membres de l'interface ont des modificateurs fixes.
Constante : public static final
Méthode : public abstract
Rappelez-vous : tous les membres de l'interface sont publics.
Interface : Il n'est pas possible de créer des objets car il existe des méthodes abstraites. Il doit être implémenté par une sous-classe. Ce n'est qu'après que la sous-classe a réécrit toutes les méthodes abstraites de l'interface que la sous-classe peut être instanciée. Sinon, la sous-classe est une classe abstraite.
 par exemple : interface Inter
 {
  //Ce n'est pas grave si les modificateurs public static final et public abstract sont manquants, car les membres de l'interface ont des modificateurs fixes. Mais il est préférable d’écrire pendant le développement pour améliorer la lisibilité.
public static final int SET_ON = 1;
public abstract void show();
}
//Utiliser les implémentations d'interface
class Test implémente Inter (){} //Vous devez remplacer la méthode abstraite montre pour créer un objet
 }
class InterfaceDemo
 {
public static void main(String[] args)
  {
  Test t = new Test();
System.out.println(t.SET_ON);

Règles d'exposition externe.

L'interface est l'extension fonctionnelle du programme.

Les interfaces peuvent être utilisées pour plusieurs implémentations.

Il existe une relation d'implémentation entre les classes et les interfaces, et une classe peut hériter d'une classe et implémenter plusieurs interfaces en même temps.

Il peut y avoir une relation d'héritage entre les interfaces.

6. Polymorphisme :

Définition : Formes d'existence multiples d'un certain type de chose.
par exemple : chats et chiens parmi les animaux
Le type correspondant de l'objet chat est le type chat
Chat x = new cat(); En même temps, le chat est aussi une sorte d'animal , et on peut aussi l'appeler chat pour animaux.
Animal y = new cat();
Animal est le type parent extrait des éléments spécifiques des chats et des chiens.
La référence du type parent pointe vers l'objet sous-type.
6.1. Réflexion du polymorphisme :
La référence de la classe parent pointe vers son propre objet sous-classe.
La référence de la classe parent peut également recevoir son propre objet sous-classe.
par exemple : Classe parent Nom de référence de la classe parent = new subclass();//Type de promotion. Transformation vers le haut. Pour utiliser les fonctions uniques de la sous-classe, vous devez downcast : sous-classe nouveau nom de référence de sous-classe = (sous-classe) nom de référence de la classe parent d'origine
Mots clés : instanceof déterminer le type de référence
par exemple : if (une instance de Cat) // Déterminez si a est un type de chat.
6.2. Prérequis au polymorphisme :
Il doit y avoir une relation entre les classes. Soit hériter, soit implémenter.
Il y a généralement une condition préalable : les sous-classes doivent remplacer (réécrire).

6.3. Avantages du polymorphisme :
L'émergence du polymorphisme a grandement amélioré l'évolutivité des programmes.
6.4. Inconvénients du polymorphisme :
Améliore l'évolutivité, mais vous ne pouvez utiliser que les références de la classe parent pour accéder aux membres de la classe parent.

6.5 Caractéristiques des fonctions membres non statiques en polymorphisme :
Au moment de la compilation : Voir s'il existe une méthode appelante dans la classe à laquelle appartient la variable de référence. Si tel est le cas, la compilation réussit ; sinon, la compilation échoue.
Au moment de l'exécution : vérifiez s'il existe une méthode à appeler dans la classe à laquelle appartient l'objet.
Un résumé simple est le suivant : lorsqu'une fonction membre est appelée de manière polymorphe, regardez à gauche lors de la compilation et à droite lors de l'exécution.
6.6 Caractéristiques des variables membres en polymorphisme :
Peu importe lors de la compilation ou de l'exécution, référez-vous au côté gauche (la classe à laquelle appartient la variable de référence.)
Caractéristiques des fonctions membres statiques en polymorphisme :
Peu importe Pour la compilation et l'exécution, reportez-vous au côté gauche (static lui-même peut être appelé directement).

7.object : C'est la classe parente directe ou indirecte de tous les objets, le Dieu légendaire.
Ce qui est défini dans cette classe doit être les fonctions que possèdent tous les objets.
Règles d'accès aux classes internes :
1. Les classes internes peuvent accéder directement aux membres des classes externes, y compris les classes privées.
2. Pour accéder à une classe interne, une classe externe doit créer un objet de classe interne.

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

Video Face Swap

Video Face Swap

Échangez les visages dans n'importe quelle vidéo sans effort grâce à notre outil d'échange de visage AI entièrement gratuit !

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)

Introduction aux différences entre la version Win7 Home et la version Win7 Ultimate Introduction aux différences entre la version Win7 Home et la version Win7 Ultimate Jul 12, 2023 pm 08:41 PM

Tout le monde sait qu'il existe de nombreuses versions du système Win7, telles que la version Win7 Ultimate, la version Win7 Professional, la version Win7 Home, etc. De nombreux utilisateurs sont coincés entre la version Home et la version Ultimate et ne savent pas quelle version choisir. alors aujourd'hui, je vais vous parler des différences entre Win7 Family Meal et Win7 Ultimate. Jetons un coup d'œil. 1. Experience Different Home Basic Edition rend vos opérations quotidiennes plus rapides et plus simples et vous permet d'accéder plus rapidement et plus facilement à vos programmes et documents les plus fréquemment utilisés. Home Premium vous offre la meilleure expérience de divertissement, permettant de profiter et de partager facilement vos émissions de télévision, photos, vidéos et musiques préférées. L'Ultimate Edition intègre toutes les fonctions de chaque édition et possède toutes les fonctions de divertissement et fonctionnalités professionnelles de Windows 7 Home Premium.

Maîtriser les concepts clés de Spring MVC : comprendre ces fonctionnalités importantes Maîtriser les concepts clés de Spring MVC : comprendre ces fonctionnalités importantes Dec 29, 2023 am 09:14 AM

Comprendre les fonctionnalités clés de SpringMVC : pour maîtriser ces concepts importants, des exemples de code spécifiques sont nécessaires. SpringMVC est un cadre de développement d'applications Web basé sur Java qui aide les développeurs à créer des structures flexibles et évolutives via le modèle architectural Model-View-Controller (MVC). application Web. Comprendre et maîtriser les fonctionnalités clés de SpringMVC nous permettra de développer et de gérer nos applications Web plus efficacement. Cet article présentera quelques concepts importants de SpringMVC

Existe-t-il des fonctionnalités orientées objet de type classe dans Golang ? Existe-t-il des fonctionnalités orientées objet de type classe dans Golang ? Mar 19, 2024 pm 02:51 PM

Il n'y a pas de concept de classe au sens traditionnel dans Golang (langage Go), mais il fournit un type de données appelé structure, à travers lequel des fonctionnalités orientées objet similaires aux classes peuvent être obtenues. Dans cet article, nous expliquerons comment utiliser les structures pour implémenter des fonctionnalités orientées objet et fournirons des exemples de code concrets. Définition et utilisation des structures Examinons d'abord la définition et l'utilisation des structures. Dans Golang, les structures peuvent être définies via le mot-clé type, puis utilisées si nécessaire. Les structures peuvent contenir des attributs

Choisissez la version Go applicable, en fonction des besoins et des fonctionnalités Choisissez la version Go applicable, en fonction des besoins et des fonctionnalités Jan 20, 2024 am 09:28 AM

Avec le développement rapide d'Internet, les langages de programmation évoluent et se mettent à jour constamment. Parmi eux, le langage Go, en tant que langage de programmation open source, a attiré beaucoup d'attention ces dernières années. Le langage Go est conçu pour être simple, efficace, sûr et facile à développer et à déployer. Il présente les caractéristiques d'une concurrence élevée, d'une compilation rapide et d'une sécurité de la mémoire, ce qui le rend largement utilisé dans des domaines tels que le développement Web, le cloud computing et le big data. Cependant, il existe actuellement différentes versions du langage Go disponibles. Lors du choix d’une version linguistique Go appropriée, nous devons prendre en compte à la fois les exigences et les fonctionnalités. tête

Quelles sont les trois caractéristiques de la 5g Quelles sont les trois caractéristiques de la 5g Dec 09, 2020 am 10:55 AM

Les trois caractéristiques de la 5G sont : 1. Haut débit ; dans les applications pratiques, la vitesse du réseau 5G est plus de 10 fois supérieure à celle du réseau 4G. 2. Faible latence : la latence du réseau 5G est d'environ plusieurs dizaines de millisecondes, ce qui est plus rapide que la vitesse de réaction humaine. 3. Une connexion étendue ; l’émergence du réseau 5G, combinée à d’autres technologies, créera une nouvelle scène de l’Internet des objets.

Types et caractéristiques des fonctions C++ Types et caractéristiques des fonctions C++ Apr 11, 2024 pm 03:30 PM

Les fonctions C++ ont les types suivants : fonctions simples, fonctions const, fonctions statiques et fonctions virtuelles ; les fonctionnalités incluent : les fonctions en ligne, les paramètres par défaut, les retours de référence et les fonctions surchargées. Par exemple, la fonction calculateArea utilise π pour calculer l'aire d'un cercle d'un rayon donné et la renvoie en sortie.

Quelles sont les caractéristiques de Java Quelles sont les caractéristiques de Java Aug 09, 2023 pm 03:05 PM

Les caractéristiques de Java sont : 1. Simple et facile à apprendre 2. Orienté objet, rendant le code plus réutilisable et maintenable 3. Indépendant de la plate-forme, capable de fonctionner sur différents systèmes d'exploitation 4. Gestion de la mémoire, via des déchets automatiques ; mécanisme de collecte Gérer la mémoire 5. Vérification de type forte, les variables doivent déclarer leur type avant utilisation 6. Sécurité, qui peut empêcher l'accès non autorisé et l'exécution de code malveillant 7. Prise en charge du multithread, qui peut améliorer les performances et la réactivité du programme ; 8. La gestion des exceptions peut éviter les plantages du programme ; 9. Un grand nombre de bibliothèques et de frameworks de développement ;

Cinq fonctionnalités phares de PHP8 pour améliorer l'efficacité du code ! Cinq fonctionnalités phares de PHP8 pour améliorer l'efficacité du code ! Jan 13, 2024 am 08:19 AM

Cinq fonctionnalités phares de PHP8 pour rendre votre code plus efficace ! PHP (Hypertext Preprocessor) est un langage de script open source largement utilisé pour le développement Web. Il est facile à apprendre, peut être utilisé avec HTML et prend également en charge la programmation orientée objet. En tant que dernière version, PHP8 propose de nombreuses nouvelles fonctionnalités et améliorations intéressantes. Voici cinq points forts qui peuvent rendre votre code plus efficace. 1. Compilateur JIT (Just-In-TimeCompile

See all articles