Dúvida nube! (Imports)

6 respostas
S

Olá, estou começando a estudar java, e estou com uma dúvida simples, para a maioria , chega a ser ridicula, mas estou me batendo muito nisso,
e gostaria que alguém me explicasse,

Como funciona os imports no java?
Eu sei importar bibliotecas como swing e etc…
import javax.swing.*;

mas gostaria de importar minhas proprias classes.
exemplo. no php é assim:

//incluir a classe

include(pasta/minhaclasse.php);

//instanciar a classe

$variavel = new MinhaClasse();

//instanciar metodos das classes

$v = $variavel->Metodos();

e no java como funciona? não está claro para min o que é package, o que é import…
gostaria que alguém me explicasse, peço perdão por ser uma duvida tão basica, mas estou abandonando php para iniciar em java,
e para min está tudo um pouco confuso.

6 Respostas

allancmm

kra, package eh o pacote onde a classe atual está, assim se vc precisa de classes de outros pacotes, seja ela definida por vc ou nao, vc deve usar o import. Por exemplo, digamos que vc crie dois pacotes para sua aplicacao, um onde vao ficar as classe da interface grafica e outro onde vai ficar todas as outras classe, quando vc definir uma classe de interface grafica, fará algo assim:

package interfaceGrafica;

public class MinhaInterface{
    .
    .
    .
}

quando vc definir uma outra classe, mas que nao seja de interface grafica, mas precise usar a classe definida acima, fará assim:

package naoInterfaceGrafica;

import interfaceGrafica.*;

public class ClasseNaoInterfaceGrafica{
    .
    .
    .
}

e as outras classes da API, vc importa do mesmo jeito, espero ter ajudado.

Kanin_Dragon

Lembrando que temos o recurso do static import.

robertol

No site da Caelum tem apostilas muito boas que explicam os conceitos de programação Java…

Leia primeiro a FJ11!

:wink:

S

putz desculpa mas ainda não entendi vamos lá!
fiz dois arquivos .java

teste.java
import testes.*;



public class teste{
    public static void main (String args[])
    {
        testes testes = new testes();  
        testes.testar();
        System.exit(0);
    }
    
}
e no mesmo diretorio testes.java
public class testes{
    
        public void testar()
        {
            System.out.println("OI");
        }
        
    
}

na hora de copilar o testes.java deu certo
já o teste.java acusa

teste.java:4: package testes does not exist
import testes.*;

1 error
sinceramente não sei o que fiz de errado, muito obrigado pela ajuda de vcs,
e muito obrigado pelos tutorials já estou lendo ! abraços.

allancmm

kra, se as classes estao no mesmo pacote, entao nao há necessidade de importar nada, e no seu exemplo, vc nao criou nenhum pacote testes, vc criou uma classe testes. Pense nos pacotes como sendo pastas onde vc separa suas classes.

S

Obrigado Senhores!
Consegui! :)

pacotes pelo que entendi são as "pastas" das classes....

não é necessario importar quando se está no mesmo pacote("pasta")
é praticamente como se fosse continuação da classe

testes.java
public class testes{
    
        public void testar()
        {
            System.out.println("OI");
            
        }
    
}
teste.java
public class teste{
    public static void main (String args[])
    {
        testes A = new testes();        
        A.testar();           
    }
    
}
testes A = new testes();        
        A.testar();
aonde testes é a "chamada" da classe testes.java definindo A como objeto e pedindo o metodo testar. Muito show ! java realmente é uma linguagem muito poderosa :) copilei e deu certo Isso me ajudou muito! agora ficou mais claro para continuar estudando. Obrigado ao apoio de todos até!
Criado 24 de fevereiro de 2011
Ultima resposta 24 de fev. de 2011
Respostas 6
Participantes 4