Différence entre importer java.util.* et java.util.XXXX [dupliquer]
Duplicata Possible:
Différence de performance entre une importation wild card et l'importation de classe requise
Implications importation de paquets java avec caractère générique
Mon responsable QA a mis en place une règle checkstyle qui java.util.*
ne peut pas apparaître dans le code source, utilisez java.util.XXX
à la place. Par exemple, vous ne pouvez écrire que:
import java.util.Date;
import java.util.List;
import java.util.Collection;
import java.util.Iterator;
import java.util.Map;
import java.util.Set;
// ... may be thousands import statement here
Mais non autorisé:
import java.util.*;
Si quelqu'un ne suit pas la règle, l'équipe d'assurance qualité ne fera pas l'intégration test. Il m'a dit que le style de import java.util.XXX
est plus clair que import java.util.*
et rend la JVM plus rapide. Est-il vrai ?
1 answers
Si vous incluez java.util.*
, vous êtes, y compris toutes les classes dans le java.util
package.
Lorsque vous incluez java.util.classname
, vous incluez uniquement la classe spécifiée dans le package java.util
.
L'utilisation de java.util.*
ne ralentira pas la JVM car les importations sont gérées au moment de la compilation, pas à l'exécution.