O uso do pacote padrão do Java é uma prática ruim?

O uso do pacote padrão do Java é uma prática ruim?

    Sim. Idealmente, os nomes de pacotes devem ser globalmente exclusivos, para evitar colisões de nomenclatura. Usar o pacote padrão quebra essa convenção. Também é impossível importar uma class do pacote padrão.

    Por que existem pacotes sem nome, se é uma idéia tão ruim? Do JLS §7.4.2 :

    Pacotes sem nome são fornecidos pela plataforma Java principalmente por conveniência ao desenvolver aplicativos pequenos ou temporários ou ao iniciar o desenvolvimento.

    Existem problemas em muitos níveis diferentes:

    • você não pode importar classs no pacote padrão de classs que não são
    • você obterá problemas de carregamento de class se tentar resolver o pacote padrão em vários artefatos
    • você não pode mais usar o escopo padrão e protegido como você normalmente pode
    • não há distinção óbvia entre o seu código e outro código

    Sim. Como outras respostas afirmaram, você não pode carregar classs do pacote padrão.

    Veja as respostas do SO:

    Como importar uma class do pacote padrão
    Como acessar classs java no pacote padrão?

    No entanto, log4j requer que a configuração esteja localizada no pacote padrão. Esta é a única coisa que é razoável manter lá.

    Edit: Como Sean Patrick Floyd e Michael apontaram nos comentários, você pode colocar qualquer arquivo de configuração no pacote padrão. Obrigado a vocês dois por apontar isso para mim.

    Sim. O problema é que não é possível importar classs do pacote padrão.