Maison > Java > javaDidacticiel > le corps du texte

Pourquoi l'appel d'une méthode statique sur une référence nulle ne génère-t-il pas d'exception NullPointerException en Java ?

Mary-Kate Olsen
Libérer: 2024-11-03 02:56:29
original
412 Les gens l'ont consulté

Why Doesn't Invoking a Static Method on a Null Reference Throw a NullPointerException in Java?

Invocation de méthode statique sur une référence nulle

Pourquoi l'appel d'une méthode statique sur une référence nulle en Java ne génère-t-il pas une exception NullPointerException ?

Explication

En Java, une méthode statique est associée à une classe plutôt qu'à une instance. Les méthodes statiques sont accessibles sans avoir besoin d'une instance de la classe.

Dans l'exemple fourni, la méthode test() est statique et est accessible en utilisant le nom de la classe, Why.test(). Il n’est pas nécessaire d’invoquer une instance de la classe. Par conséquent, même si la variable de référence NULL est nulle, la méthode test() peut toujours être exécutée sans NullPointerException.

Bonne pratique

Bien qu'il soit possible d'accéder méthodes statiques via des références d’objet, cela est considéré comme une mauvaise pratique car cela peut conduire à de la confusion et à des hypothèses incorrectes sur le comportement prévu du code. Il est recommandé de toujours appeler des méthodes statiques en utilisant le nom de la classe, comme indiqué ci-dessous :

<code class="java">Why.test();</code>
Copier après la connexion

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!

source:php.cn
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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal