importjava.util.*;publicclassExecucao{/** * @param args */publicstaticvoidmain(String[]args){// TODO Auto-generated method stubScannersc=newScanner(System.in);SomaobjSoma=newSoma();System.out.println("Informe o valor de A: ");objSoma.a=sc.nextInt();//a variavel "a" me retorna um erro " the field Soma.a is not visible "System.out.println("Informe o valor de B: ");objSoma.b=sc.nextInt();//a variavel "b" me retorna um erro " the field Soma.a is not visible "objSoma.Somando();objSoma.Imprimir();}}
Scannersc=newScanner(System.in);SomaobjSoma=newSoma();System.out.println("Informe o valor de A: ");objSoma.setA(sc.nextInt());System.out.println("Informe o valor de B: ");objSoma.setB(sc.nextInt());objSoma.Somando();objSoma.Imprimir();
intprimeiroNum,segundoNum;System.out.println("Informe o valor de A: ");primeiroNum=sc.nextInt();System.out.println("Informe o valor de B: ");segundoNum=sc.nextInt();SomaobjSoma=newSoma(primeiroNum,segundoNum);//Retire o 3º parâmetro
Não esqueça de tratar as exceções.
Flw
Frantic_Avenger
Pow demorei 4 segundos a mais que o Vini para resonder. :lol:
BinhoAraujo
ViniGodoy,
muito obrigado deu certo =)
coisinha basica e eu sem conseguir ein? :oops:
Frantic Avenger,
cara valeu por ajudar, mas nao consegui do jeito que tu falou nao.
e do jeito do ViniGodoy ficou mais facil.
Abraaxx
ViniGodoy
Outra coisa. Fazer a soma é um serviço da classe. Então, não faz sentido um método chamado "setSoma". O usuário só deve se preocupar em setar a e b, pois a classe é quem sabe como somar. Nem faz sentido o método somando, pois quem tem que fazer a soma é o getSoma.
Também não deveria ser uma tarefa da soma imprimir os dados. Via de regra, classes de negócio nunca solicitam dados, nem imprimem coisas na tela. Deixamos isso para as classes de visão (no caso o seu main). Assim fica mais fácil caso você queira transformar essa aplicação de soma numa aplicação swing, por exemplo.
importjava.util.*;publicclassExecucao{publicstaticvoidmain(String[]args){Scannersc=newScanner(System.in);SomaobjSoma=newSoma();System.out.println("Informe o valor de A: ");objSoma.setA(sc.nextInt());System.out.println("Informe o valor de B: ");objSoma.setB(sc.nextInt());System.out.println("A soma é: "+objSoma.getSoma());}}
Frantic_Avenger
Tem razão acabei copiando seu código e aí escrevi errado.
O certo seria:
objSoma.setA(sc.nextInt());
objSoma.setB(sc.nextInt());
Como o Vine falou e não
objSoma.setA = sc.nextInt();
objSoma.setB = sc.nextInt();
Como eu escrevi.
Desculpa aí. Flw
BinhoAraujo
Ah entendido, valeu pela dica
I
itopaulo
Olá BinhoAraujo, acredito que o ViniGodoy já tenha matado a charada mas gostaria de reforças algums pontos!!!
objSoma.a=sc.nextInt();//avariavel"a"meretornaumerro" the field Soma.a is not visible "
no momento que você tem um objeto da classe soma chamado objSoma, a partir do operador (.) você terá acesso somente aos campos públicos
portanto no momento que você tenta acessar a variável a ( objSoma.a ) é gerado essa excessão ( the field Soma.a is not visible ). por esse motívo que você utiliza o encapsulamento, para ter acesso aos campos private. e sendo assim é necessário usar o setA().
OK?
BinhoAraujo
Frantic Avenger, tudo bem =)
Itopaulo,
Ok, Thanks… xD
BinhoAraujo
Aproveitando o mesmo Topico,
pq estou recebendo esse erro?
Informe o seu Peso:
80
Informe a sua Altura:
1.76
[color=red]Exception in thread "main"[/color] [color=darkblue]java.util.InputMismatchException[/color]
[color=red]at java.util.Scanner.throwFor(Unknown Source)
at java.util.Scanner.next(Unknown Source)
at java.util.Scanner.nextDouble(Unknown Source)
at Execucao.main[/color]([color=darkblue]Execucao.java:19[/color])
segue o codigo:
public class Imc {
double massa = 0;
double altura = 0;
public Imc(){
}
public Imc(double pMassa, double pAltura){
setMassa(pMassa);
setAltura(pAltura);
}
public void setMassa(double massa){
this.massa = massa;
}
public void setAltura(double altura){
this.altura = altura;
}
public double getMassa(){
return massa;
}
public double getAltura(){
return altura;
}
public double getIMC(){
return (massa /(altura*altura));
}
}
importjava.util.Scanner;publicclassExecucao{/** * @param args */publicstaticvoidmain(String[]args){// TODO Auto-generated method stubScannersc=newScanner(System.in);ImcobjImc=newImc();System.out.println("Informe o seu Peso: ");objImc.setMassa(sc.nextDouble());System.out.println("Informe a sua Altura: ");objImc.setAltura(sc.nextDouble());System.out.println("Seu IMC é: "+objImc.getIMC());}}