Importando classes no Java

Importando classes no Java

Em meu preparo para a certificação da Oracle, tive que lidar com a complexidade dos imports. Vamos verificar essa classe Aluno:


public class Aluno {

private final String nome;

public Aluno(String nome) { this.nome = nome; }

}

Agora vou adicionar os alunos em uma lista para formar uma turma. Para adicionar todos os alunos de uma vez usarei o método addAll() da interface List:

Banner da Escola de Programação: Matricula-se na escola de Programação. Junte-se a uma comunidade de mais de 500 mil estudantes. Na Alura você tem acesso a todos os cursos em uma única assinatura; tem novos lançamentos a cada semana; desafios práticos. Clique e saiba mais!

import java.util.List;
import java.util.ArrayList;
import java.util.Arrays;

Aluno a1 = new Aluno("Felipe");
Aluno a2 = new Aluno("Valéria");
Aluno a3 = new Aluno("Igor"); 
Aluno a4 = new Aluno("Lucas"); 
Aluno a5 = new Aluno("Karen");

List<Aluno> alunos = new ArrayList<Aluno>(); 
alunos.addAll(Arrays.asList(a1, a2, a3, a4, a5));

Analisando um pouco o nosso código, veja a quantidade de imports que tivemos que fazer do mesmo pacote. Será que não tem como importar as 3 classes de uma única vez? E se tentarmos:


import java.util.List, Arrays, ArrysList;

Mas não compila! Vamos tentar de outra maneira:


import java.util.{List, Arrays, ArrysList};

Também não compila! Para importarmos classes específicas precisamos sempre de um import cada uma para delas ou então podemos importar todas de uma vez utilizando o "*":


import java.util.\*;

Agora teremos acesso a todas as classes do pacote java.util. Vamos supor que o meu sistema tenha as seguintes classes:


import br.com.caelum.alura.dao.AlunoDAO; import br.com.caelum.alura.dao.factory.ConnectionFactory;

Se eu tentar importar todas as classes do pacote dao:


import br.com.caelum.alura.dao.\*;

Terei acesso a todas as classes? Inclusive as classes de subpacotes? A resposta é... Não! Se quiser todas as classes de um pacote, precisa especificar SEMPRE qual o pacote que você quer:


//importando todas as classes do pacote dao apenas
 import br.com.caelum.alura.dao.\*; 
 //importando todas as classes do pacote factory apenas 
 import br.com.caelum.alura.dao.factory.\*;

Agora sim podemos acessar todas as classes do pacote dao e do pacote factory!

O que achou dos imports do Java? Não sabia o quão restrito poderia ser? Quer saber mais? Pensando nisso, o instrutor Guilherme Silveira criou a os cursos de certificação Java que especifica todas as peculiaridades da linguagem Java com 9 cursos preparatórios para a certificação da Oracle!

Alex Felipe
Alex Felipe

Alex é instrutor e desenvolvedor e possui experiência em Java, Kotlin, Android. Atualmente cria conteúdo no canal https://www.youtube.com/@AlexFelipeDev.

Veja outros artigos sobre Programação