Maison > Java > javaDidacticiel > Pourquoi Javac avertit-il des opérations non contrôlées ou dangereuses en Java ?

Pourquoi Javac avertit-il des opérations non contrôlées ou dangereuses en Java ?

DDD
Libérer: 2024-12-27 18:26:14
original
674 Les gens l'ont consulté

Why Does Javac Warn About Unchecked or Unsafe Operations in Java?

Pourquoi Javac émet-il l'avertissement « Utilise des opérations non vérifiées ou non sécurisées » ?

Lors de la compilation du code Java avec javac, les développeurs peuvent rencontrer l'avertissement :

javac Foo.java
Note: Foo.java uses unchecked or unsafe operations.
Note: Recompile with -Xlint:unchecked for details.
Copier après la connexion

Cet avertissement indique que le compilateur a détecté des problèmes potentiels de sécurité de type dans le code.

Cause de l'avertissement :

L'avertissement peut survenir lors de l'utilisation de collections sans spécificateurs de type dans les versions Java 5 et ultérieures. Par exemple, utiliser Arraylist() au lieu de ArrayList() déclenchera cet avertissement. Cela suggère que le compilateur ne peut pas vérifier l'utilisation sécurisée de la collection en raison du manque d'informations de type générique.

Solution :

Pour éliminer l'avertissement, spécifiez le type d'objets à stocker dans la collection. Au lieu de :

List myList = new ArrayList();
Copier après la connexion

Utilisez :

List<String> myList = new ArrayList<String>();
Copier après la connexion

Cela clarifie le type attendu d'éléments dans la collection et permet au compilateur d'effectuer une vérification de type.

Inférence de type dans Java 7 :

À partir de Java 7, l'inférence de type peut être utilisée pour simplifier les instanciation. L'extrait de code suivant accomplit la même chose que l'exemple précédent :

List<String> myList = new ArrayList<>();
Copier après la connexion

En tirant parti de l'inférence de type, le compilateur peut déduire le type générique du type des éléments ajoutés à la collection.

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