Como criar uma Classe e Declarar Objetos

Agora que você já leu no artigo passado sobre a utilidade das classes e objetos em Java, vamos ensinar nesse tutorial como criar uma classe em sua IDE e como instanciar os objetos dessa classe.

Para isso, vamos usar o conceito de Orientação a Objeto, criando uma classe chamada Aluno, que usaremos em nosso próximo artigo para conter o nome e notas de alunos, bem como preencher e acessar os dados desses objetos.

Curso Java Progressivo
Obter meu certificado!

Criando uma classe em Java


Sem mais delongas, crie seu projeto de Java.
Eu chamei o meu de PrimeiraClasse.

Ao criar esse, note que se chamará PrimeiraClasse.java
Nesse tutorial vamos criar outra classe, a classe "Aluno", que o Java irá chamar de "Aluno.java".

Para isso, se estiver no NetBeans vá em File -> New File
Em Categories, escolha Java Class, e Next.
Dê o nome de Aluno para sua nova classe.

Pronto. Sua nova classe está criada.
Note que apareceu outra aba, ao lado da "PrimeiraClasse.java", e se chama "Aluno.java"

Nesse novo arquivo, deverá ver algo como:

public class Aluno{

}

Que é nossa classe, e que, ainda, está em branco.
Criada a classe, vamos aprender como criar os objetos dessa classe.


Declarando um objeto de uma classe em Java

Se lembrar bem, você já declarou objetos de classe em nosso curso de Java.
Mais especificamente, declarou o objeto 'entrada', da classe 'Scanner', várias vezes.



Agora, vamos fazer o mesmo com nossa classe Aluno.
Vamos criar um objeto, um aluno da classe "Aluno".
A sintaxe é (digite isso na aba da PrimeiraClasse.java):

Aluno donaFifi = new Aluno();
Aluno patropi = new Aluno();
Aluno programador = new Aluno();

Pronto, criamos três objetos do tipo Aluno.

Poderíamos ter feito:
Aluno donaFifi;
donaFifi = new Aluno();

O new Aluno() é o que cria o objeto. E atribuímos ele à variável donaFifi.
Essa variável, porém, não é um objeto. Ela contém uma referência ao objeto. É como se ela apontasse, como se tivesse o endereço da localização do objeto. Então, sempre que mudamos essa variável, estamos mudando diretamente o objeto.

Porém, fica muito caxias dizer 'declare uma referência ao objeto Aluno'.
No dia-a-dia, simplesmente dizemos: criamos um objeto do tipo Aluno.
Mas na verdade essas variáveis não são objetos, e sim referências a objetos. O importante é saber disso.




Qualquer coisa, métodos ou dados que colocarmos na classe "Aluno", fará parte dos objetos "donaFifi", "patropi" e "programador".
No próximo tutorial você verá bem isso.

Por exemplo, se quisermos adicionar o campo para armazenar o nome completo deles, criamos uma string dentro da classe "Aluno", assim, todos os objetos terão essa string.
Qual a vantagem disso?

Ora, criamos esse campo somente uma vez! Na classe! E todos os objetos herdaram isso!
Imagine numa situação real! Em uma escola, com milhares de alunos. Você declara a string uma vez, e ela passa a fazer parte da ficha da cadastro de milhares de alunos.

Muito útil esse Java e a Orientação a Objetos, não?

36 comentários:

  1. Esse site é mesmo "caxias"!

    ResponderExcluir
  2. Tou iniciando programação java agora e tou achando muito bom. Bem elementar para pricipiantes como eu. Gostei d+++

    ResponderExcluir
  3. Obrigado por dedicar seu tempo a ensinar. Parabéns pela iniciativa e principalmente pela clareza das informações. Definições que estavam difíceis de digerir em aula ficaram fáceis de se entender aqui!

    ResponderExcluir
  4. Muito obrigado por compartilhar seu conhecimento com o mundo amigo, comecei tem alguns mêses e estou gostando d+ do Java, quero criar jogos como hobbie e não conseguiria se não fosse a sua iniciativa...

    ResponderExcluir
  5. A partir de Portugal segue um enorme abraço para esta inicitiva brilhante de alguem que simplesmente decide ensinar e passar seus conhecimentos sem receber por isso e ainda coloca alguem completamente out neste ramo a programar em java ( coisas basicas) tou adorando o cursinho

    ResponderExcluir
  6. Ola, meu amigo, estou gostando muito do curso, quero parabeniza-lo. E te agradecer pela iniciativa de poder compartilhar seus conhecimentos!!! Valeu!!

    ResponderExcluir
  7. Meu amigo, gostaria de parabeniza-lo por compartilhar seus conhecimentos!! Muito obrigado!!! O seu tutorial de Java está me ajudando muito!!! Valeu!!!

    ResponderExcluir
  8. Olá Carol,

    Ficamos muito felizes que você esteja gostando de nossos tutoriais!
    Qualquer dúvida ou sugestão, só falar.

    ResponderExcluir
  9. Material muito bom, repassando para os colegas ^^

    ResponderExcluir
  10. Estou Maravilhado com a qualidade do ensino nesse curso...Parabéns ao(s) Autor(es).

    ResponderExcluir
  11. Realmente o conteúdo do site é muito bom.
    Eu estou realmente apaixonado pelo Java. Valeu JP!

    ResponderExcluir
  12. Cadê a continuação do curso???

    ResponderExcluir
  13. Olá Anônimo,

    Clique em Índice , no menu, no topo do site, para ver a continuação do curso.

    ResponderExcluir
  14. você é demais, queria ter chegado aqui antes

    ResponderExcluir
  15. cara muito bom o site estam de parabéns !

    ResponderExcluir
  16. Cada dia está melhor!Parabéns quanto mais avanço no curso mais fico contente é exatamente o que eu queria, aprender a programar em Java. E vocês são feras.obrigado

    ResponderExcluir
  17. Meus sinceros agradecimento a vocês que decidiram compartilhar seu conhecimento em prol daqueles que tanto almejam um dia criar algo, mesmo que simplório em Java. Eu pretendo!

    ResponderExcluir
  18. Valeu! Java progressivo pela iniciativa estou gostando muito deste curso aqui só não aprende quem não dedica!

    ResponderExcluir
  19. Estou simplesmente achando muito bom a maneira com que se explia, pretendo ir até o fim.
    depois quem sabe eu aprenda programar neste poderoso sistema chamado j a v a. aqui as explicações são boas então não acontecerá como em outros pre curso que a gente se perde e não aprende.

    ResponderExcluir
  20. Obrigado pelo apoio, Jose!

    E caso venha a ter alguma dúvida ou se perder em algo, não pense duas vezes, basta pergunta que esclarecemos.

    Nosso objetivo é fornecer o máximo de informações possíveis, não deixando a desejar nada para curso, livro ou ou faculdade alguma.

    Abraço e bons estudos.

    ResponderExcluir
  21. Caramba!
    você são demais, obrigado.
    eu tenho 15 anos e to aprendendo muito com esse site.
    Eu também gostaria de ajudar você.
    então se precisarem de alguma ajuda com webdesign pode falar comigo.
    meu E-mail é: pabloverlly@gmail.com
    estarei disponível para ajudar vocês voluntariamente, assim como vocês estão me ajudando.

    ResponderExcluir
  22. Estou gostando do conteúdo está me ajudando muito.


    public class PrimeiraClasse
    {
    public static void main(String[] Args)
    {
    Aluno jair= new Aluno();
    jair.nome="Jair";
    System.out.println(jair.nome);
    }
    }


    public class Aluno
    {
    String nome, endereco;
    int cpf, telefone;

    }

    ResponderExcluir
  23. boa maltas alguem me pode ajudar a class de objecto para contruir figuras geometricos tipo circulo, retangulo, elipses
    deixo o meu email brunexcv5agmail.com

    ResponderExcluir
  24. Olá, eu to com um probleminha nessa parte, eu não consegui utilizar o NetBeans, e to com o notepad++. Como ficarem para criar classes nele e executar? Essa parte de criar classes fiquei meio confusa, acho que é por pouca do aplicativo que to usando, e eu to compilando e rodando no CMD, com o javac, e nele está dando erros também.
    Tem alguém que poderia me explicar como eu poderia fazer? Eu até entendi o conteúdo desse tópico, mas eu só aprendendo praticando e compilando mesmo, então to meio que agora perdida!!

    ResponderExcluir
  25. oi andy tudo bem ! você esta lembrando de criar o package no notepad ?

    ResponderExcluir
  26. Parabéns a toda a equipe do Java Progressivo, vocês nos ajudam muito com estas lições fáceis, de bom entendimento e práticas, suas explicações são excelentes. Eu faço faculdade de Análise e desenvolvimento de sistemas e recentemente fiquei de DP em Java. Nossa, achava muito difícil e complicado e não gostava mais da linguagem, depois que passei a ler o javaprogressivo.net eu começei a gostar demais da linguagem e estou entendendo bem mais do que antes.
    Muito Obrigado Equipe JP!!!

    ResponderExcluir
  27. Olá, em primeiro lugar quero agradecer pela atitude de disponibilizar um conteudo dessa qualidade. Gostaria de tirar uma duvida perdoe-me se for muito simples: aqui nesse ponto exalta o beneficio do uso de classes na criação de objetos. No final da explicação diz q uma vez o campo criado na classe todos os objetos herdam isso. Mas poderiam me dizer a diferença entre programar uma tela de cadastro de alunos onde os campos de entrada de dados e armazenamento são os mesmo e o procedimento no java descrito acima ? Nos dois processos tambem quando criado um campo na tela de cadastro todos os registros estão sujeitos a ter q atualizar esse campo ?

    ResponderExcluir
  28. É da mesma maneira que funcionam as structs em C? Da mesma maneira que em Java se cria uma classe, se declara variáveis dentro dela e se declara objetos dentro da classe principal, em C se declara uma struct, declara variáveis dentro dela e existe um novo tipo, o struct classe, que usando os typedef, podem ser chamado simplesmente de classe, não é? Já estudei todo o curso de C do C Progressivo, e estou aqui no curso de Java. Assim como o de C, é excelente! Parabéns.

    ResponderExcluir
  29. Estou amando!
    Excelente iniciativa!

    ResponderExcluir
  30. Parabéns a toda a equipe. Vocês contribuem muito com essas lições.

    ResponderExcluir
  31. O melhor artigo de criação de classes em Java da Internet.

    ResponderExcluir
  32. cara vcs estao de parabens , faço parte do Instituto Federal Fluminense , e eles dao essa disciplina aqui, porem a professora é muito ruim veio... ela sabe programar , porem nao sabe passar o conhecimento . com essas aulas ficou muito claro os conceitos. obrigado cara.

    ResponderExcluir
  33. Eu curso Sistemas de Informação no IF. Estou aprendendo muito neste site sobre POO. Muito obrigado.

    ResponderExcluir
  34. Como faço para atribuir string a classe? não consegui achar sobre.

    ResponderExcluir
  35. Obrigado por partilhar o seu conhecimento bro!! Decidi aprender java porque quero criar um app ! Quando eu ficar multimilionário farei uma grande doação para este site por me ajudar tanto a aprender programação !!!

    ResponderExcluir