Pacotes Java e como importá-los?

Neste artigo, você aprenderá sobre pacotes e como usá-los para criar código modular em Java.

Pacote Java

Um pacote é simplesmente um contêiner que agrupa tipos relacionados (classes Java, interfaces, enumerações e anotações). Por exemplo, no núcleo do Java, a ResultSetinterface pertence ao java.sqlpacote. O pacote contém todos os tipos relacionados que são necessários para a consulta SQL e conexão com o banco de dados.

Se você deseja usar a ResultSetinterface em seu código, basta importar o pacote java.sql (a importação de pacotes será discutida posteriormente neste artigo).

Conforme mencionado anteriormente, os pacotes são apenas contêineres para classes Java, interfaces e assim por diante. Esses pacotes ajudam a reservar o namespace da classe e a criar um código sustentável.

Por exemplo, você pode encontrar duas Dateclasses em Java. No entanto, a regra na programação Java é que apenas um nome de classe exclusivo é permitido em um projeto Java.

Como eles conseguiram incluir duas classes com o mesmo nome Date no JDK?

Isso foi possível porque essas duas Dateclasses pertencem a dois pacotes diferentes:

  • java.util.Date - esta é uma classe normal de Date que pode ser usada em qualquer lugar.
  • java.sql.Date - esta é uma Data SQL usada para a consulta SQL e tal.

Dependendo se o pacote é definido pelo usuário ou não, os pacotes são divididos em duas categorias:

Pacote Integrado

Pacotes integrados são pacotes java existentes que vêm junto com o JDK. Por exemplo, java.lang, java.util, java.io, etc. Por exemplo:

 import java.util.ArrayList; class ArrayListUtilization ( public static void main(String() args) ( ArrayList myList = new ArrayList(3); myList.add(3); myList.add(2); myList.add(1); System.out.println(myList); ) ) 

Produto :

 minhaLista = (3, 2, 1) 

A ArrayListclasse pertence java.util package. Para usá-lo, primeiro temos que importar o pacote usando a importinstrução.

 import java.util.ArrayList; 

Pacote definido pelo usuário

Java também permite que você crie pacotes conforme sua necessidade. Esses pacotes são chamados de pacotes definidos pelo usuário.

Como definir um pacote Java?

Para definir um pacote em Java, você usa a palavra-chave package.

 package packageName; 

Java usa diretórios do sistema de arquivos para armazenar pacotes. Vamos criar um arquivo Java dentro de outro diretório.

Por exemplo:

 └── com └── test └── Test.java 

Agora, edite o arquivo Test.java e, no início do arquivo, escreva a instrução do pacote como:

 package com.test; 

Aqui, qualquer classe declarada no diretório test pertence ao pacote com.test .

Aqui está o código:

package com.test; class Test (public static void main (String () args) (System.out.println ("Hello World!");))

Produto :

 Olá Mundo! 

Aqui, a classe Test agora pertence ao pacote com.test .

Convenção de nomenclatura de pacote

O nome do pacote deve ser exclusivo (como um nome de domínio). Portanto, existe uma convenção para criar um pacote como um nome de domínio, mas na ordem inversa. Por exemplo, com.company.name

Aqui, cada nível do pacote é um diretório em seu sistema de arquivos. Como isso:

 └── com └── empresa └── nome 

E não há limitação de quantos subdiretórios (hierarquia de pacotes) você pode criar.

Como criar um pacote no Intellij IDEA?

No IntelliJ IDEA, veja como você pode criar um pacote:

  1. Clique com o botão direito na pasta de origem.
  2. Vá para o novo e depois para o pacote .
  3. Uma caixa pop-up aparecerá onde você pode inserir o nome do pacote.

Assim que o pacote for criado, uma estrutura de pastas semelhante também será criada em seu sistema de arquivos. Agora, você pode criar classes, interfaces e assim por diante dentro do pacote.

Como importar pacotes em Java?

Java tem uma importinstrução que permite importar um pacote inteiro (como nos exemplos anteriores) ou usar apenas certas classes e interfaces definidas no pacote.

The general form of import statement is:

 import package.name.ClassName; // To import a certain class only import package.name.* // To import the whole package 

For example,

 import java.util.Date; // imports only Date class import java.io.*; // imports everything inside java.io package 

The import statement is optional in Java.

If you want to use class/interface from a certain package, you can also use its fully qualified name, which includes its full package hierarchy.

Here is an example to import a package using the import statement.

 import java.util.Date; class MyClass implements Date ( // body ) 

The same task can be done using the fully qualified name as follows:

 class MyClass implements java.util.Date ( //body ) 

Example: Package and importing package

Suppose, you have defined a package com.programiz that contains a class Helper.

 package com.programiz; public class Helper ( public static String getFormattedDollar (double value)( return String.format("$%.2f", value); ) ) 

Now, you can import Helper class from com.programiz package to your implementation class. Once you import it, the class can be referred directly by its name. Here's how:

 import com.programiz.Helper; class UseHelper ( public static void main(String() args) ( double value = 99.5; String formattedValue = Helper.getFormattedDollar(value); System.out.println("formattedValue = " + formattedValue); ) ) 

Output:

 formattedValue = $99.50 

Here,

  1. the Helper class is defined in com.programiz package.
  2. a classe Helper é importada para um arquivo diferente. O arquivo contém a classe UseHelper.
  3. O getFormattedDollar()método da classe Helper é chamado de dentro da classe UseHelper.
Pacote de importação Java

Em Java, a importinstrução é escrita diretamente após a instrução do pacote (se existir) e antes da definição da classe.

Por exemplo,

package package.name; import package.ClassName; // importe apenas uma classe de classe MyClass (// corpo)

Artigos interessantes...