Eae pessoal , surgiu mais um duvida para mim…
Bem eu não posso importar uma class de mesmo nome de um Package diferente?
Eu não posso importar algo do Package Default para um que eu criei?Somente o Contrario?
Eae pessoal , surgiu mais um duvida para mim…
Bem eu não posso importar uma class de mesmo nome de um Package diferente?
Eu não posso importar algo do Package Default para um que eu criei?Somente o Contrario?
Ficou meio confuso então vou tentar esclarecer a minha dúvida sobre o assunto.
Criaste um pacote chamado meu.pacote e dentro dele colocaste uma classe chamada MinhaClasse;
Criaste uma outra classe chamada MinhaClasse dentro da raiz do src e queres chamar essa MinhaClasse da Raiz, dentro da classe MinhaClasse do pacote meu.pacote ???
Se relamente for isso, porque criar uma classe fora de um Pacote, dentro da raiz ??
Lembre que o nome de uma classe para outra classe é seu nome totalmente qualificado, tipo sua classe na verdade não se chama MinhaClasse, ela se chama meu.pacote.MinhaClasse.
Para resolver esse problema de ter que escrever o nome totalmente qualificado todas as Vezes, no java temos a importação de classes, onde colocasimport meu.pacote.MinhaClasse
e usa essa classe dentro da sua sem problema algum. Porém, quando temos 2 classes com o mesmo nome e o que você quer fazer, pense nas implicações…
Se você fizer isso:
[code]package meu.pacote;
public class MinhaClasse {
public void meuMetodo(){
MinhaClasse mc = new MinhaClasse();
}
}[/code] Como a própria classe se chama MinhaClasse, java interpretará como sendo sua própria classe que está sendo chamada, a menos que você passe o nome do pacote totalmente qualificado para esse objeto.
Como a MinhaCLasse que está no src (pacote default) não tem um nome totalmente qualificado, isso se torna realmente impossível.
Porém pense que uma boa prática de programação Java é sempre colocar todas as suas classes dentro de pacotes. Todas mesmo, justamente para evitar esse tipo de conflito com nome de classes. De preferência que você também use o nome de domínio invertido da empresa para a organização.
Eu adotei o seguinte padrão para meus PFs com.wordpress.aohana.nomesistema
Fazendo com que se algum dia alguém criar uma classe com o mesmo nome da minha, e eu precise usar essa classe criada, as mesmas não tenham conflitos de nomes.
Abs [] e qualquer coisa grita aí.
[EDIT] - esse padrão é o domínio do meu blog invertido.
então eu fiz isto só que tipo,ao criar um pacote no Eclipse ele criou como (Default Package) , mas esse não é o nome correto…eu não nomiei na hora de criar…e agora tem como renomear ?Ou chamar pelo Default?Digo como fazer referencia a ele .
Faz o seguinte:
Clica com o direito em cima do teu projeto -> New -> Package;
O pacote que acabaste de criar vai aparecer na tela pra ti;
Aí vais na classe que está no (Default Package) clica com o botão direito em cima dela -> Refactor -> Move, seleciona o pacote de sua escolha e confirme.
Tenta aí e depois retorna.
Abs []
Opa vlw cara ! fiz outro pacote com nomes…muito obrigado…