A princípio não pois o import não “carrega” nada. Não é como o require/include do php.
Se der uma catada no fórum você encontra várias referências e expliações para isso
[quote=cv]
Mas da vontade de arrebentar a boca de quem nao sabe dar ‘Organize Imports’ no Eclipse e entope o projeto de warnings.[/quote]
++
Dá muita raiva mesmo. É tão fácil selecionar o seu projeto e dar um ctrl+shift+O. Não precisa nem ser classe a classe, selecionando o projeto ele faz em tudo. Não dá pra entender…
Amigos a JVM na hora em que vc faz o import java.util.*;(por exemplo) ela traz todas as classes que vc esta utilizando no seu programa e cria o ponto classe somente com essas classes.
Aconselho vcs a fazer um simples teste: procurem algum descompilador java bom e façam o teste depois posta aqui o resultado.
“import java.*” não faz o que você quer fazer. Na verdade não faz nada, já que não existe nenhuma classe no JDK cujo pacote seja só “java.”.
De qualquer maneira, não custa nada teclar Ctrl+Shift+O (Organize Imports) no Eclipse; ele deixa tudo arrumadinho e de quebra você descobre que está importando uma coisa que não deve importar (uma com.sun.alguma coisa que não vai funcionar).
Tenho uma classe A e faço a declaração do import de uma outra classe B.
Mas NÃO UTILIZO B em parte alguma do codigo.
Haverá perda de performance ou algo do tipo?
[/quote]
Não ha problemas de performance já que é apenas açucar sintático para facilitar a vida dos humanos. O .class não tem isso.
O objetivo do import (embora o nome possa enganar) é diminuir a necessiade de incluir os nomes completos das classes que deveria ser o padrão. Com o import isso só é necessário quando à colisão de nomes, o que é bem raro.
Ou seja, o import é apenas uma forma de escrever os nomes das classes de forma mais curta e não interfere em anda com o funcionamento no runtime.
Em C# o nome do import é “using” que dá mais a ideia do que realmente está sendo feito.
Agradeço a ajuda de todos em me tirar esta antiga dúvida
[quote=sergiotaborda]
O objetivo do import (embora o nome possa enganar) é diminuir a necessiade de incluir os nomes completos das classes que deveria ser o padrão. Com o import isso só é necessário quando à colisão de nomes, o que é bem raro.
Ou seja, o import é apenas uma forma de escrever os nomes das classes de forma mais curta e não interfere em anda com o funcionamento no runtime.
Em C# o nome do import é “using” que dá mais a ideia do que realmente está sendo feito.[/quote]
Realmente, o nome engana, “importar”, por isto surgiu a minha duvida. E a gente percebe mesmo sua irmportância quando temos ocasiões de duas classes diferentes, mas com o mesmo nome, como é o caso da classe Date, já que pode ser a java.util.Date ou java.sql.Date, por exemplo.
Realmente, o nome engana, “importar”, por isto surgiu a minha duvida. E a gente percebe mesmo sua irmportância quando temos ocasiões de duas classes diferentes, mas com o mesmo nome, como é o caso da classe Date, já que pode ser a java.util.Date ou java.sql.Date, por exemplo.
Falow[/quote]
Verdade ein! O importar serve apenas para para distinguir uma classe da outra. O java tem o Date do util e do sql. E se eu quiser fazer o meu próprio Date.java? Aí o import decide qual classe usar!
O negócio do import java.* daria um monte de pau pq existem muitas classes com mesmo nome!