Java: Tratamento de packages

Quando se pretende projectar o desenvolvimento de classes, geralmente se recorre ao uso de packages de modo a evitar conflitos de nomes de classes e a organizar melhor o codigo, para evitar convençao. Um exemplo disso sao os pacotes muito conhecidos como java.util,java.io, etc, que possuem suas classes. Por exemplo ao fazer um import (declaração que permite colocar classes num ficheiro .java) voce poderia usar a seguinte instrução:

import java.util.Random;

Isso significa que podemos usar a classe Random do pacote java.util, porque ela já está no nosso ficheiro .java. Como nao é meu objectivo falar de imports mas sim de criação de packages e ser mais pratico com isso, sao necessarios alguns passos (Note que nao é exactamente uma convenção oficial).

– Adotar a convenção de nomes que consiste em usar sua extensao.nomededominio.nomepasta1.nomepasta3.sequiseroutrapastaeassimpordiante

– Quando for criar uma classe, no inicio do ficheiro .java deverá existir a declaração

package extensao.nomededominio.nomepasta1.nomepasta3.sequiseroutrapastaeassimpordiante

Imaginemos que estejamos a organizar nossos ficheiros na pasta src do seguinte path:

c:\proj\src

Nosso pacote ficaria assim:

c:\proj\extensao.nomededominio.nomepasta1.nomepasta3.sequiseroutrapastaeassimpordiante

Nossos arquivos .java ficariam em src

ex: c:\proj\src\ExemploClasse.java

e exemplo classe desejariamos que fosse um pacote de

extensao.nomededominio.nomepasta1.nomepasta3.sequiseroutrapastaeassimpordiante

Para que assim fosse por altura da compilação teriamos de proceder da seguinte forma:

c:\proj\src>javac -d c:\proj c:\proj\src\ExemploClasse.java

ou

c:\proj\src>javac -d c:\proj c:\proj\src\*.java

Isso colocaria, os ficheiros .class nos pacotes certos. Por altura da execução dum .class que usa os pacotes acima poderiamos chamar:

c:\proj\src>java -classpath ;c:\proj;. FICHEIRO.CLASS

Isso daria a indicação certa da localização dos pacotes ao FICHEIRO.CLASS

Um pensamento sobre “Java: Tratamento de packages

Deixe uma resposta

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s