Organizando Classes por Funcionalidade

JavaBeginner
Pratique Agora

Introdução

Neste laboratório, você aprenderá a usar pacotes para organizar classes de acordo com suas funcionalidades.

Pacotes

Até agora, escrevemos muitas classes. Para um projeto grande, talvez haja centenas de classes, então muitos arquivos e classes não são fáceis de organizar. Diferentes programadores podem escrever classes diferentes, e às vezes acontece de classes com o mesmo nome aparecerem em um projeto. Então, como evitar esses problemas? Podemos usar pacotes (packages). As bibliotecas Java são divididas em pacotes, incluindo java.lang, que contém a maioria das classes que usamos até agora. Um pacote é um agrupamento de tipos relacionados que fornece proteção de acesso e gerenciamento de espaço de nomes. Observe que tipos se refere a classes, interfaces, enumerações e tipos de anotação.

Para criar um pacote, escolha um nome para o pacote e coloque uma declaração de pacote com esse nome no topo de cada arquivo fonte que contém os tipos que você deseja incluir no pacote. A declaração de pacote deve ser a primeira linha no arquivo fonte. Apenas uma declaração de pacote pode estar em cada arquivo fonte.

Para usar um membro de pacote público de fora de seu pacote, você deve fazer uma das seguintes ações:

  • Referir-se ao membro por seu nome totalmente qualificado
  • Importar o membro do pacote
  • Importar todo o pacote do membro

Exemplo

Escreva o seguinte código no arquivo /home/labex/project/com/example/demo/packageDemo.java:

package com.example.demo;  // create a new package

public class packageDemo{
    public static void test(){
        System.out.println("This is a package test.");
    }
}

Escreva o seguinte código no arquivo /home/labex/project/packageTest.java:

import com.example.demo.packageDemo;
class packageTest{
    public static void main(String[] args){
        packageDemo.test();
    }
}

Saída:

Execute o arquivo packageTest.java usando os seguintes comandos:

javac /home/labex/project/packageTest.java
java packageTest

Veja a saída:

This is a package test.

Resumo

Os pacotes nos fornecem uma maneira de coletar classes que têm uma relação lógica ou que realizam algumas funções especiais. Usando pacotes, podemos evitar conflitos de nomes. Você pode empacotar seu código em pacotes, fornecendo-o a outros ou obtendo pacotes de outros, na internet. Isso nos proporciona mais conveniência na codificação.