[resolvido] Construtores

15 respostas
welitonjose
public class MinhaClass {
int a;
int b;

MinhaClass(a;b)

if (a=0 & b>1) {
return ;

}

na construção de uma classe isso e valido
usar o return caso nao seja qual a melhor opção pra mim retornar o valor ????

15 Respostas

evertonsilvagomesjav
welitonjose:
public class MinhaClass {
int a;
int b;

MinhaClass(a;b)

if (a=0 & b>1) {
return ;

}

na construção de uma classe isso e valido
usar o return caso nao seja qual a melhor opção pra mim retornar o valor ????

Voce ta querendo retornar algo no construtor? Se for nao tem como.

Hebert_Coelho

O.O

Cara, pra que passar os atributos da propria classe em seu construtor? Vc não precisa disso… Vai estar fazendo um mega problema errado ao fazer isso!

Para esse comando funcionar, vc tera q ter um construtor que aceitasse dois parametros, int a e int b, e de dentro da propria classe chamar new Pai(a,b);

Para acessar os atributos dentro da propria classe no construtor, basta colocar this.a ou this.b

Dá uma olhada melhor em OO. [=

D
welitonjose:
public class MinhaClass {
int a;
int b;

MinhaClass(a;b)

if (a=0 & b>1) {
return ;

}

na construção de uma classe isso e valido
usar o return caso nao seja qual a melhor opção pra mim retornar o valor ????

-- bom faltaram alguns detalhes no seu construtor ( me corrijam se eu estiver errado ).
int a;
int b;

MinhaClass(a,b){}// aqui você separa com "," virgula e não ";" ponto e virgula eusa as chaves.
//pois (acredito eu) que não seja possivel fazer um construtor abstrato, mas mesmo que fosse teria que ser declarado como abstract

//seu if não pode ficar solto no ar, portanto tem que estar dentro de um metodo assim
public int meuMetodo() {
if (a=0 & b>1) {
return a; // seu return tem que retornar alguma coisa, sempre do mesmo tipo que o metodo, nesse caso o metodo é um int
//logo o return retora um int também
}

espero ter ajudado.

Z111

Caso vc não queira ter o traballho de declarar, instanciar e inicializar o objeto para depois chamar um método que retorne um valor (parece ser esta sua dor), crie um método estático dentro da sua classe.

public static int minhaFuncao(int a, int b) {
....
return xpto;
}

// ----

int i = MinhaClass.minhaFuncao(1, 2);
evertonsilvagomesjav
DiegoVenan:
welitonjose:
public class MinhaClass {
int a;
int b;

MinhaClass(a;b)

if (a=0 & b>1) {
return ;

}

na construção de uma classe isso e valido
usar o return caso nao seja qual a melhor opção pra mim retornar o valor ????

-- bom faltaram alguns detalhes no seu construtor ( me corrijam se eu estiver errado ).
int a;
int b;

MinhaClass(a,b){}// aqui você separa com "," virgula e não ";" ponto e virgula eusa as chaves.
//pois (acredito eu) que não seja possivel fazer um construtor abstrato, mas mesmo que fosse teria que ser declarado como abstract

//seu if não pode ficar solto no ar, portanto tem que estar dentro de um metodo assim
public int meuMetodo() {
if (a=0 & b>1) {
return a; // seu return tem que retornar alguma coisa, sempre do mesmo tipo que o metodo, nesse caso o metodo é um int
//logo o return retora um int também
}

espero ter ajudado.

Tem um monte de erros de sintaxe na Classe dele porém o "return" do jeito que esta é valido porque ali ele para a execução do método ou do construtor.

welitonjose

ok seria valido entao descrever assim

int a;
int b;

Minhaclass (a,b) {
for (i=0;i=10;i++){

if (a<2 & b >10) {
return cont;

}else{ return a & b}
}

}
evertonsilvagomesjav
welitonjose:
ok seria valido entao descrever assim
int a;
int b;

Minhaclass (a,b) {
for (i=0;i=10;i++){

if (a<2 & b >10) {
return cont;

}else{ return a & b}
}

}

Cara da uma olhada nos exemplos que te passaram ai, NAO TEM COMO RETONAR ALGO DENTRO DO CONSTRUTOR, vc precisa de definir os tipos das variaveis que vao ser passadas no parametro do seu construtor.

Z111

http://www.javabeginner.com/learn-java/java-constructors
[color=red]


“…A java constructor has the same name as the name of the class to which it belongs. Constructor?s syntax does not include a return type, since constructors never return a value…”


[/color]

D
welitonjose:
ok seria valido entao descrever assim
int a;
int b;

Minhaclass (a,b) {
for (i=0;i=10;i++){

if (a<2 & b >10) {
return cont;

}else{ return a & b}
}

}
não tão valido ... contrutores não retornam valor logo, se você precisa de retorno terá que fazer uma metodo. mas só por curiosidade. qualo objetivo dessa classe? e principalmente, qual o objetivo do FOR dentro do construtor?

acho que não saquei

evertonsilvagomesjav
DiegoVenan:
welitonjose:
ok seria valido entao descrever assim
int a;
int b;

Minhaclass (a,b) {
for (i=0;i=10;i++){

if (a<2 & b >10) {
return cont;

}else{ return a & b}
}

}
valido seria... mas só por curiosidade. qualo objetivo dessa classe? e principalmente, qual o objetivo do FOR dentro do construtor?

acho que não saquei

nao seria valido de jeito NENHUM.

D

evertonsilvagomesjava:

nao seria valido de jeito NENHUM.

ja editei…tks

welitonjose

Acho que to viajando

nao retorna nada entao
nao exite ??? RETURN

ok

e nao fazer operaçoes logicas como for e if

ou faz
???

se nao faz pra que eu vou usar construtores entao ???

D

welitonjose:
Acho que to viajando

nao retorna nada entao
nao exite ??? RETURN

ok

e nao fazer operaçoes logicas como for e if

ou faz
???

se nao faz pra que eu vou usar construtores entao ???

O construtor se resume a isso! Dar possibilidades ou obrigar o usuário de uma classe a passar argumentos
para o objeto durante o processo de criação do mesmo.

retirado de: Caelum fj-11

Download da apostila aqui!!! é gratis 8)

tralsl

welitonjose:
Acho que to viajando

nao retorna nada entao
nao exite ??? RETURN

ok

e nao fazer operaçoes logicas como for e if

ou faz
???

se nao faz pra que eu vou usar construtores entao ???

nada impede de haver loops e if em um construtor, se a sua lógica de negócio exigir isso

e pode haver um return, mas tem que ser um return vzio, como um return de um método que retorna void, dessa forma o restante do construtor não é executado

welitonjose

opa vlw galera entendi agora

fiquem c DEUS

Criado 20 de julho de 2010
Ultima resposta 20 de jul. de 2010
Respostas 15
Participantes 6