Métodos, Construtores, dúvidas!

9 respostas
B

Então, eu to fazendo a matéria de Programação Orientada a Objetos e o pessoal que ta cursando essa matéria ja tiveram uma base de java no primeiro semestre e eu nao tive essa base, consegui equivalência com uma matéria lá que dava uma idéia de lógica mas não de java. Aí to tendo q correr atrás das coisas e se alguma alma caridosa pudesse me iluminar eu ficaria muito grato.

Não entendi bem o lance de construtores de classe, nesse primeiro exemplo aqui a string nome e o int idade são oque? Atributos do objeto né? Ta, mas oque isso quer dizer? Esses com void é porque nao vou ter que retornar nada, mas oque ele tá fazendo ali com set e this? E pra saber se vou precisar retornar algo depende da lógica do programa né? Tem algum construtor ou método aqui? (Sim, perdido é pouco!)

public class Cadastro {

    private String nome; 
    private int idade; 

    public String getNome() {

        return nome;
    }

    public void setNome(String nome) {
        this.nome = nome;
    }

    public int getIdade() {
        return idade;
    }

    public void setIdade(int idade) {
        this.idade = idade;
    }
}

E nesse exemplo aqui, oque diabos ta rolando aqui? Quem são os contrutores? Métodos? E se o objetivo disso é facilitar, como eu chamaria esses métodos no main?

import br.furb.furbot.Alien;
import br.furb.furbot.Booleano;

/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
import java.util.ArrayList;

/**
 *
 * @author Gilson
 */
public class GuardaObjetos {

    private Alien[] qtdalien;
    private Booleano[] qtdboolean;

    public GuardaObjetos(int ali, int boo) {
        this.qtdalien = new Alien[ali];
        this.qtdboolean = new Booleano[boo];
    }

    public void addAlien() {

        for (int a = 0; a < qtdalien.length; a++) {
            if (qtdalien[a] == null) {
                qtdalien[a] = new Alien();
            }
        }
    }

Acho que é isso, valeu ae pessoal.

Abraços!

9 Respostas

T

Leia a apostila FJ11 da Caelum que está disponível no site www.caelum.com.br. Lá eles explicam melhor que eu posso explicar para você. E por favor, leia com atenção antes de ficar desesperado. O desespero leva à morte, então é melhor não ficar desesperado.

O

Não morra. Rsss.

Leia a apostila que o thingol disse! super boa ela!!
Abraços e boa sorte.

B

Baixei e vou começar a ler, obrigado.

Raafer

Cara ate pouco tempo atras tinha as mesmas dúvidas que voce.Leia a apostila FJ11 da Caelum que ira te ajudar assim como me ajudou tambem.

g4j

Começe devagar cara, provavelmente vc viu programação estruturada e está batendo de frente com orientação à objetos.

Então é normal estar um pouco “desnorteado”, procure por exemplos mais simples, explicações do que é classe e pra que é usada.

Um passo de cada vez, ok?

claudneto

Bom…

String nome e int idade são atributos sim…Atributos são CARACTERÍSTICAS dos objetos. Por exemplo:

class Pessoa { private String nome; private int idade; private String rg; //String apenas pq quero cadastrar dessa maneira - 00.000.000-0 private String cpf;//String apenas pq quero cadastrar dessa maneira - 000.000.000/00 private String endereco; private String cidade; private String estado; private String pais; }

Nesse caso, a pessoa tem essas características: nome, idade, RG, CPF, endereço, cidade, estado, pais.

private String nome;

Como eu coloquei o PRIVATE na frente do atributo, ele não será acessado por outrar classes, apenas métodos dessa mesma classe, por isso criou-se, no seu código, os métodos getNome() e setNome(String nome). O get apenas retorna o valor do atributo; já o set, atualiza os dados.
Obs.: Os métodos get, são do tipo do atributo:

public String getNome(); public int getIdade(); public String getRg(); //String apenas pq quero cadastrar dessa maneira - 00.000.000-0 public String getCpf();//String apenas pq quero cadastrar dessa maneira - 000.000.000/00 public String getEndereco(); public String getCidade(); public String getEstado(); public String getPais();

Já os métodos set, são do tipo VOID, pois não retornam nada, apenas atualizam!

public void setNome(String nome); public void setIdade(int idade); public void setRg(String rg); //String apenas pq quero cadastrar dessa maneira - 00.000.000-0 public void setCpf(String cpf);//String apenas pq quero cadastrar dessa maneira - 000.000.000/00 public void setEndereco(String end); public void setCidade(String cidade); public void setEstado(String estado); public void setPais(String pais);

Espero ter ajudado.

Obs².: A parte de CONSTRUTORES eu não conheço muito, então prefiro não arriscar!

B

Legal, valeu pela ajuda ae pessoal. A aposta da Caelum me ajudou pra caramba, entendi o lance dos atributos de objeto até, o lance do parametro dos métodos e consegui fazer uns exercícios que antes não tinha nem idéia de como fazer! hahaha

Valeu ae, qualquer dúvida do uma postada

Abraços!

Aramati

OMG, Mais um Furbiano :!:

marcosharbs

Método construtor de um objeto é o primeiro método a ser executado quando vc o instancia
vc pode ter vários construtores numa mesma classe deis que seus parametros sejam diferente
nele vc pode passar parametros e realizar rotinas que deseja fazer quando um objeto é criado.

Criado 26 de agosto de 2008
Ultima resposta 25 de ago. de 2009
Respostas 9
Participantes 8