Por que e altemente aconselhado nao criar classes no pacote padrao " NetBeans "

5 respostas
L

Isso mesmo, por que o netbeans informa que é altamente recomendado nao criar classes no pacote padrão na pasta de Pacotes de Codigos Fontes.
Porém coloquei ali para ver o que acontecia 3 classes e rodei o programa sem problemas.
Outra coisa que notei foi que, ao criar um novo pacote nessa pasta o pacote padrao do java some " ou é renomeado"?

poderiam tirar essas duvdas?

5 Respostas

B

Não é recomendado simplesmente por que não há organização alguma dos pacotes.

Pacote padrão é a raiz da pasta do programa, “/”. Ela nunca some.

T

Outro motivo é que normalmente JSPs não conseguem enxergar corretamente servlets que estão no “default package”; isso é devido a alguns web containers bugados, e para evitar problemas (você sabe… normalmente você tem de trabalhar com um desses carinhas bugados, porque é a versão homologada pelo seu cliente) é melhor sempre pô-los dentro de um package qualquer.

Marky.Vasconcelos

Um exemplo que não iria funcionar.

Em uma classe que faz uma conexão com o banco de dados

class Conections{
SessionFactory factory;
static {
//Inicia a factory
}
}

Nessa classe ao ser carregada pelo ClassLoader ela ira criar a conexao com o banco, agora imagine se ela estiver no default package, em uma outra classe com um main voce nao poderia fazer isso:

Class.forName("Connections");

Resulta em um ClassNotFoundException

Ja com um pacote voce por exemplo (br.conex) voce poderia fazer isso:

Class.forName("br.conex.Connections");

Assim seria carregado corretamente e a conexão seria estabelecida.

maior_abandonado

thingol:
Outro motivo é que normalmente JSPs não conseguem enxergar corretamente servlets que estão no “default package”; isso é devido a alguns web containers bugados, e para evitar problemas (você sabe… normalmente você tem de trabalhar com um desses carinhas bugados, porque é a versão homologada pelo seu cliente) é melhor sempre pô-los dentro de um package qualquer.

eu usando o tomcat passei por isso…

tava aprendendo a criar uma taglib e não tava encontrando a classe…foi só coloca a classe dentro de um pacote e muda a parte q aponta pra ela…e ai deu tudo certo…

L

ficou extremamente claro, grato.

Criado 13 de agosto de 2008
Ultima resposta 14 de ago. de 2008
Respostas 5
Participantes 5