Solucionado (ver solução)
Solucionado
(ver solução)
4
respostas

Pacotes

Caros, estou com uma dúvida. como faço para acessar uma classe que está em um pacote diferente

Banco

  • br.com.xyz.sistema
    • br.com.xyz.conta

Colecao

  • br.com.xyz.colecao

Como faço para uma classe que está no pacote Colecao acessa uma classe que está no pacote Banco?

4 respostas

primeiro, para acessar uma classe que esta em outro pacote, eh necessario que essa classe seja um public class.

depois eh so importar essa classe onde deseja utiliza-la. Ex.

====================== package br.com.xyz.sistema; public class Banco {

}

====================== package br.com.xyz.colecao; import br.com.xyz.sistema.Banco; public class Colecao {

}

======================

Observe sempre os modificadores tanto das classes quanto dos metodos e atributos.

Considerando as seguintes implementações:

Classe Conta:

package br.com.caelum.banco;//Criando a classe Conta no pacote banco

public class Conta{
    private double saldo;
    private String titular;
    ...
}

Classe em outro pacote que tenta instanciar uma Conta:

package br.com.caelum.teste;//Criando uma classe em um pacote diferente
import br.com.caelum.banco;//importanto as classes públicas do pacote banco (só tem uma - Conta);

public class TestaConta{
    public static void main(String[] args){
        Conta conta = new Conta();//Como fizemos a importação do pacote banco, é possível enxergar a classe Conta.
    }
}
solução!

Só uma correção na resposta do Arthur: para importar as classes de outro pacote, você tem duas alternativas.

1) Importar todas de uma vez

import br.com.caelum.banco.*;

2) Importar uma de cada vez (mais recomendável para leitura do código depois)

import br.com.caelum.banco.Conta;
import br.com.caelum.banco.OutraClasse;

Toda vez que for fazer importação deixe o mouse parado sobre a palavra sublinhada e o eclipse vai sugerir qual importação você deve fazer.

Um atalho para fazer importação no Eclipse é Ctrl + shift + o.