SlideShare uma empresa Scribd logo
1 de 12
Baixar para ler offline
Pacotes: 
Organizando suas classes e bibliotecas 
PROFESSOR: DÊNIS CAMURÇA
Cronograma 
 Criando pacotes 
 Definindo pacotes 
 Importando pacotes
Organização 
 Os diretórios estão diretamente relacionados 
aos chamados pacotes, e costumam agrupar 
classes de funcionalidades similares ou 
relacionadas 
 Ex: 
 No pacote java.útil temos as classes Date, 
SimpleDateFormat e GregorianCalendar; Todas 
elas trabalham com datas de formas diferentes
Organização (Cont...)
Diretórios 
 Se a classe Cliente está no pacote banco, ela deverá estar 
no diretório com o mesmo nome: banco. 
 Se ela se localiza no pacote br.com.caelum.banco, 
significa que está no diretório br/com/caelum/banco. 
 A classe Cliente que se localizar nesse último diretório 
mencionado deve ser escrita da seguinte forma: 
package br.com.ifpa.banco; 
class Cliente { 
// ... 
}
Diretórios 
package 
 Fica fácil notar que a palavra chave package 
indica qual o pacote/diretório que contem esta 
classe. 
 Um pacote pode conter nenhum ou mais 
subpacotes e/ou classes dentro dele.
Padrão de nomenclatura de 
pacotes 
 O padrão para dar nome aos pacotes é relativo ao 
nome da empresa que desenvolveu a classe: 
 br.com.nomedaempresa.nomedoprojeto.subpacote 
 br.com.nomedaempresa.nomedoprojeto.subpacote2 
 br.com.nomedaempresa.nomedoprojeto.subpacote2.sub 
pacote3 
 Os pacotes só possuem letras minúsculas, não 
importa quantas palavras estejam contidas nele. 
Esse padrão existe para evitar ao máximo o conflito 
de pacotes de empresas diferentes. 
 As classes do pacote padrão de bibliotecas não 
seguem essa nomenclatura, que foi dada para 
bibliotecas de terceiros.
Import 
 Para usar uma classe do mesmo pacote basta fazer 
referencia a ela como foi feito até agora 
simplesmente escrevendo o próprio nome da classe. 
Se existe uma classe Banco dentro do pacote 
br.com.ifpa.banco, ela deve ser escrita assim: 
package br.com.ifpa.banco; 
class Banco { 
String nome; 
Cliente clientes[]; 
}
Import (cont...) 
 A classe Cliente deve ficar no mesmo pacote 
da seguinte maneira: 
package br.com.ifpa.banco; 
class Cliente { 
String nome; 
String endereco; 
}
Import 
 A maneira mais simples de se referenciar a classe Banco: basta 
importá-la do pacote br.com.ifpa.banco: 
package br.com.ifpa.banco.util; 
import br.com.ifpa.banco.Banco; // agora podemos nos referenciar 
// a Banco diretamente 
class TesteDoBanco { 
public static void main(String args[]) { 
Banco meuBanco = new Banco(); 
meuBanco.nome = “Banco do Brasil”; 
} 
}
package, import, class 
 E muito importante manter a ordem! 
 Primeiro aparece uma (ou nenhuma) vez o 
package, 
 depois pode aparecer um ou mais import e, 
 por último as declarações de classes.
import x, y, z 
 E possível importar um pacote inteiro (todas as 
classes do pacote, exceto os subpacotes) através 
do *: 
 Ex: import java.util.*; 
 Importar todas as classes de um pacote NÃO 
implica em perda de performance em tempo de 
execução 
 Importar todas as classes de um pacote pode 
trazer problemas com classes de mesmo nome! 
 Importar de um em um é considerado boa prática 
pois facilita a leitura para outros programadores

Mais conteúdo relacionado

Mais de Denis Sobrenome

Poo1 aula 3 - java - comentários instruções e blocos-palavras chave
Poo1   aula 3 - java - comentários instruções e blocos-palavras chavePoo1   aula 3 - java - comentários instruções e blocos-palavras chave
Poo1 aula 3 - java - comentários instruções e blocos-palavras chaveDenis Sobrenome
 
Poo1 aula 1 - java - história e introdução
Poo1   aula 1 - java -  história e introduçãoPoo1   aula 1 - java -  história e introdução
Poo1 aula 1 - java - história e introduçãoDenis Sobrenome
 
Poo1 aula 2 - java - apresentação do netbeans e 1º programa
Poo1   aula 2 - java - apresentação do netbeans e 1º programaPoo1   aula 2 - java - apresentação do netbeans e 1º programa
Poo1 aula 2 - java - apresentação do netbeans e 1º programaDenis Sobrenome
 
Poo1 aula 4 - tipos de dados variáveis-constantes
Poo1   aula 4 - tipos de dados variáveis-constantesPoo1   aula 4 - tipos de dados variáveis-constantes
Poo1 aula 4 - tipos de dados variáveis-constantesDenis Sobrenome
 
Poo1 aula 6 - conversão de tipos primitivos
Poo1   aula 6 - conversão de tipos primitivosPoo1   aula 6 - conversão de tipos primitivos
Poo1 aula 6 - conversão de tipos primitivosDenis Sobrenome
 
Poo1 aula 5 - pacotes criando-definindo_importando
Poo1   aula 5 - pacotes criando-definindo_importandoPoo1   aula 5 - pacotes criando-definindo_importando
Poo1 aula 5 - pacotes criando-definindo_importandoDenis Sobrenome
 
Poo1 aula 4 - tipos de dados variáveis-constantes
Poo1   aula 4 - tipos de dados variáveis-constantesPoo1   aula 4 - tipos de dados variáveis-constantes
Poo1 aula 4 - tipos de dados variáveis-constantesDenis Sobrenome
 
Poo1 aula 4 - tipos de dados variáveis-constantes - copia
Poo1   aula 4 - tipos de dados variáveis-constantes - copiaPoo1   aula 4 - tipos de dados variáveis-constantes - copia
Poo1 aula 4 - tipos de dados variáveis-constantes - copiaDenis Sobrenome
 
Poo1 aula 2 - java - apresentação do netbeans e 1º programa
Poo1   aula 2 - java - apresentação do netbeans e 1º programaPoo1   aula 2 - java - apresentação do netbeans e 1º programa
Poo1 aula 2 - java - apresentação do netbeans e 1º programaDenis Sobrenome
 

Mais de Denis Sobrenome (9)

Poo1 aula 3 - java - comentários instruções e blocos-palavras chave
Poo1   aula 3 - java - comentários instruções e blocos-palavras chavePoo1   aula 3 - java - comentários instruções e blocos-palavras chave
Poo1 aula 3 - java - comentários instruções e blocos-palavras chave
 
Poo1 aula 1 - java - história e introdução
Poo1   aula 1 - java -  história e introduçãoPoo1   aula 1 - java -  história e introdução
Poo1 aula 1 - java - história e introdução
 
Poo1 aula 2 - java - apresentação do netbeans e 1º programa
Poo1   aula 2 - java - apresentação do netbeans e 1º programaPoo1   aula 2 - java - apresentação do netbeans e 1º programa
Poo1 aula 2 - java - apresentação do netbeans e 1º programa
 
Poo1 aula 4 - tipos de dados variáveis-constantes
Poo1   aula 4 - tipos de dados variáveis-constantesPoo1   aula 4 - tipos de dados variáveis-constantes
Poo1 aula 4 - tipos de dados variáveis-constantes
 
Poo1 aula 6 - conversão de tipos primitivos
Poo1   aula 6 - conversão de tipos primitivosPoo1   aula 6 - conversão de tipos primitivos
Poo1 aula 6 - conversão de tipos primitivos
 
Poo1 aula 5 - pacotes criando-definindo_importando
Poo1   aula 5 - pacotes criando-definindo_importandoPoo1   aula 5 - pacotes criando-definindo_importando
Poo1 aula 5 - pacotes criando-definindo_importando
 
Poo1 aula 4 - tipos de dados variáveis-constantes
Poo1   aula 4 - tipos de dados variáveis-constantesPoo1   aula 4 - tipos de dados variáveis-constantes
Poo1 aula 4 - tipos de dados variáveis-constantes
 
Poo1 aula 4 - tipos de dados variáveis-constantes - copia
Poo1   aula 4 - tipos de dados variáveis-constantes - copiaPoo1   aula 4 - tipos de dados variáveis-constantes - copia
Poo1 aula 4 - tipos de dados variáveis-constantes - copia
 
Poo1 aula 2 - java - apresentação do netbeans e 1º programa
Poo1   aula 2 - java - apresentação do netbeans e 1º programaPoo1   aula 2 - java - apresentação do netbeans e 1º programa
Poo1 aula 2 - java - apresentação do netbeans e 1º programa
 

Poo1 aula 5 - pacotes criando-definindo_importando

  • 1. Pacotes: Organizando suas classes e bibliotecas PROFESSOR: DÊNIS CAMURÇA
  • 2. Cronograma  Criando pacotes  Definindo pacotes  Importando pacotes
  • 3. Organização  Os diretórios estão diretamente relacionados aos chamados pacotes, e costumam agrupar classes de funcionalidades similares ou relacionadas  Ex:  No pacote java.útil temos as classes Date, SimpleDateFormat e GregorianCalendar; Todas elas trabalham com datas de formas diferentes
  • 5. Diretórios  Se a classe Cliente está no pacote banco, ela deverá estar no diretório com o mesmo nome: banco.  Se ela se localiza no pacote br.com.caelum.banco, significa que está no diretório br/com/caelum/banco.  A classe Cliente que se localizar nesse último diretório mencionado deve ser escrita da seguinte forma: package br.com.ifpa.banco; class Cliente { // ... }
  • 6. Diretórios package  Fica fácil notar que a palavra chave package indica qual o pacote/diretório que contem esta classe.  Um pacote pode conter nenhum ou mais subpacotes e/ou classes dentro dele.
  • 7. Padrão de nomenclatura de pacotes  O padrão para dar nome aos pacotes é relativo ao nome da empresa que desenvolveu a classe:  br.com.nomedaempresa.nomedoprojeto.subpacote  br.com.nomedaempresa.nomedoprojeto.subpacote2  br.com.nomedaempresa.nomedoprojeto.subpacote2.sub pacote3  Os pacotes só possuem letras minúsculas, não importa quantas palavras estejam contidas nele. Esse padrão existe para evitar ao máximo o conflito de pacotes de empresas diferentes.  As classes do pacote padrão de bibliotecas não seguem essa nomenclatura, que foi dada para bibliotecas de terceiros.
  • 8. Import  Para usar uma classe do mesmo pacote basta fazer referencia a ela como foi feito até agora simplesmente escrevendo o próprio nome da classe. Se existe uma classe Banco dentro do pacote br.com.ifpa.banco, ela deve ser escrita assim: package br.com.ifpa.banco; class Banco { String nome; Cliente clientes[]; }
  • 9. Import (cont...)  A classe Cliente deve ficar no mesmo pacote da seguinte maneira: package br.com.ifpa.banco; class Cliente { String nome; String endereco; }
  • 10. Import  A maneira mais simples de se referenciar a classe Banco: basta importá-la do pacote br.com.ifpa.banco: package br.com.ifpa.banco.util; import br.com.ifpa.banco.Banco; // agora podemos nos referenciar // a Banco diretamente class TesteDoBanco { public static void main(String args[]) { Banco meuBanco = new Banco(); meuBanco.nome = “Banco do Brasil”; } }
  • 11. package, import, class  E muito importante manter a ordem!  Primeiro aparece uma (ou nenhuma) vez o package,  depois pode aparecer um ou mais import e,  por último as declarações de classes.
  • 12. import x, y, z  E possível importar um pacote inteiro (todas as classes do pacote, exceto os subpacotes) através do *:  Ex: import java.util.*;  Importar todas as classes de um pacote NÃO implica em perda de performance em tempo de execução  Importar todas as classes de um pacote pode trazer problemas com classes de mesmo nome!  Importar de um em um é considerado boa prática pois facilita a leitura para outros programadores