Il existe un moyen dans les langages de programmation pour dire au compilateur qu'un morceau de données est constant. Il y a deux exigences
1. Une constante de compilateur qui ne change jamais
2. Une valeur initialisée au moment de l'exécution, et cette valeur ne sera pas modifiée
En Java , utilisez les variables de modificateur final pour atteindre ces deux exigences
<pren name = "code"> // Compiler constant private final int value = 9; private static final int value_two = 99; public static final int value_three = 39; // la valeur est initialisée au moment de l'exécution, et la valeur ne sera pas modifiée private int i4 = rand.nextint (20); static final int_5 = rand.nextint (20); </ spank> static final int_5 = rand.nextint (20); </ spande> statique
Lorsque Final modifie le type de données de base, gardez les données constantes et inchangées
Lors de la référence finale de modification de l'objet, la référence est maintenue constante. Une fois la référence initialisée pour pointer un objet, il ne peut pas être modifié pour pointer en un autre objet.
Cependant, l'objet lui-même peut être modifié
Les paramètres de modification finaux dans la liste des paramètres de la méthode, ce qui signifie que l'objet pointé par la référence des paramètres ne peut pas être modifié dans la méthode. Cette fonctionnalité est principalement utilisée pour transmettre des données aux classes internes anonymes.
Aussi, en Java
Le but de la méthode de modification finale est d'interdire explicitement aux sous-classes de remplacer cette méthode
Classe de modification finale, l'héritage est interdit
Comment implémentez-vous ces deux exigences en C #?
Besoin 1: Constantes de compilateur
Const modifie les constantes, qui doivent être utilisées pour les calculs au temps de compilation. Les constantes sont toujours statiques mais n'ont pas à (en fait, pas autorisé) incluent le modificateur statique dans une déclaration constante
Exigence 2: Constantes d'exécution
Le mot-clé ReadOnly peut parfois nécessiter certaines variables dont la valeur ne doit pas être modifiée, mais sa valeur est inconnue avant l'exécution.
C # fournit un autre type de variable pour cette situation: champs en lecture seule
Aussi, en C #
La méthode de modification scellée consiste à interdire explicitement aux sous-classes d'écraser cette méthode.
Classe de modification scellée, l'héritage est interdit
Ce qui précède est la brève discussion du mot-clé final de Java et des mots clés const et Readonly en C #. J'espère que tout le monde pourra soutenir wulin.com ~