Olá pessoa fiz esses dois procedimentos…
package Dados;
/**
*
* @author Stephany
*/
public class Conta {
public int numero;
public String dono;
public double saldo;
public double limite;
}
[code]package Procedimentos;
import Dados.Conta;
/**
*
-
@author Stephany
*/
public class Programa {
public static void main(String[] args) {
Conta minhaConta;
minhaConta = new Conta();
minhaConta.dono ="Duke";
minhaConta.saldo = 1000.0;
System.out.println("Saldo atual: "+minhaConta.saldo);
}
}[/code]
PORÉM QUANDO EU VOU EXECUTAR APARECE A SEGUINTE MENSAGEM
run:
Erro: O método principal não foi encontrado na classe Procedimentos.Programa; defina o método principal como:
public static void main(String[] args)
Java Result: 1
MAS NO PACOTE PROCEDIMENTO E CLASSE PROGRAMA EU COLOQUEI O MÉTODO MAIN…
O QUE SERÁ QUE ESTÁ ERRADO?
como você está executando a classe?
Como assim, Rodrigo?
Por favor peço que tenha paciência pois sou iniciante!
tipo eu executo a classe Programa, onde eu mesmo declarei o método main!
Sim sim, o que eu quero saber é como você está executando a sua classe.
Você está executando ela a partir de uma IDE? (Eclipse, NetBeans, IntelliJ IDEA) ?
Você está compilando via javac e executando via java em linhas de comando?
Você criou um arquivo jar e está tentando executá-lo ?
Ai quando eu vou sacar e depositar o Saldo não muda… Continua 1000.0 REAIS.
sendo que eu dei o valor de 200 para sacar e 500 para depositar.
package Dados;
/**
*
* @author Stephany
*/
public class Conta {
public int numero;
public String dono;
public double saldo;
public double limite;
public int Saca;
public int Deposita;
}
obs: adicionei as variáveis Saca e Deposita
package Procedimentos;
import Dados.Conta;
/**
*
* @author Stephany
*/
public class Programa {
public static void main(String[] args) {
Conta minhaConta;
minhaConta = new Conta();
minhaConta.dono ="Duke";
minhaConta.saldo = 1000.0;
// saca 200 reais
minhaConta.Saca = 200;
minhaConta.Deposita =500;
System.out.println("Saldo atual: "+minhaConta.saldo);
}
}
Acho que estou fazendo uma confusão rsrs
me ajudem??? ![:cry: :cry:](https://www.guj.com.br/images/emoji/twitter/cry.png?v=9)
Ué, peraí… Sua classe está sendo executada? Eu achei que estava com problemas.
NA PRIMEIRA QUE EU TE MANDEI, NÃO EXECUTA…
MAS QUANDO EU ADICIONO OS VALORES DE SACA E DEPOSITA ELE COMPILA NORMAL…
TA MUITO CONFUSO ISSO…
TEM ALGUMA COISA ERRADA E NÃO SEI O QUE É!
AGORA EXECUTO…
MAS EU CONTINUO COM O PROBLEMA DE ELE NÃO TIRAR 200 E DEPOSITAR 500
O QUE PODE SER?
Acontece que você está mexendo com atributos quando deveria utilizar métodos.
métodos dão comportamento à sua classe, no caso, manipulam o saldo. A sua classe conta não deve ter atributos saca e deposita, e sim métodos sacar() e depositar(). Veja:[code]class Conta{
private double saldo;
public void sacar(double valor){
this.saldo = saldo - valor;
}
public void depositar(double valor){
this.saldo = saldo + valor;
}
public double consultarSaldo(){
return saldo;
}
}[/code]Se você quiser sacar um valor da conta, invoca o método sacar e ele manipulará o saldo. O mesmo para depositar.
Fez sentido?
Então ficaria asssim???
package Dados;
/**
*
* @author Stephany
*/
public class Conta {
public int numero;
public String dono;
public double saldo;
public double limite;
public int Saca;
public int Deposita;
public void saca (double valor) {
this.saldo = 1000 - 200;
}
public void depositar (double valor){
this.saldo = 1000 + 500;
}
public double consultarSaldo() {
return saldo;
}
}
Fiz assim como te mandei e não mudou o valor também…
Esse THIS serve para que?
Entendi algumas partes apenas!
Não, a ideia é você simplesmente usar os métodos da conta. assim:[code] public static void main(String[] args){
Conta conta = new Conta();
conta.depositar(1000);
conta.sacar(500);
System.out.println("O saldo da conta é: "+conta.consultarSaldo());
}[/code]
Estou estudando pela apostila da Caelum e apenas está assim:
class TestaAlgunsMetodos {
public static void main(String[] args) {
// criando a conta
Conta minhaConta;
minhaConta = new Conta();
// alterando os valores de minhaConta
˜ minhaConta.dono = "Duke";
minhaConta.saldo = 1000;
// saca 200 reais
minhaConta.saca(200);
// deposita 500 reais
minhaConta.deposita(500);
System.out.println(minhaConta.saldo);
}
˜ }
[quote=stephany_13]Estou estudando pela apostila da Caelum e apenas está assim:
[code]
class TestaAlgunsMetodos {
public static void main(String[] args) {
// criando a conta
Conta minhaConta;
minhaConta = new Conta();
// alterando os valores de minhaConta
� minhaConta.dono = “Duke”;
minhaConta.saldo = 1000;
// saca 200 reais
minhaConta.saca(200);
// deposita 500 reais
minhaConta.deposita(500);
System.out.println(minhaConta.saldo);
}
� }
[/code][/quote]
Não entendi o que você quis dizer com isso.
Mas perai, preciso fazer as variáveis sacar e depositar? Ou só métodos mesmo?
Pois aqui eu coloquei as variáveis com os mesmo nomes dos métodos, agora ficou mais confuso rs
:shock:
[quote=stephany_13]Mas perai, preciso fazer as variáveis sacar e depositar? Ou só métodos mesmo?
Pois aqui eu coloquei as variáveis com os mesmo nomes dos métodos, agora ficou mais confuso rs
:shock: [/quote]
Não, as variáveis sacar e depositar não devem existir.
Você tem o TeamViewer ai?
quer entrar no meu pc pra ver ± o que eu estou fazendo?
só assim mesmo pra mim entender rs
se vc não estiver ocupado é claro!
[quote=stephany_13]Você tem o TeamViewer ai?
quer entrar no meu pc pra ver ± o que eu estou fazendo?
só assim mesmo pra mim entender rs
se vc não estiver ocupado é claro![/quote]
Agora não tenho como não, mas você está no caminho certo. Exclua as 2 variáveis, porque elas não devem existir. E se tiver mais alguma dúvida pode perguntar aqui que não tem problema.
OK.
Ta dando esse erro.
run:
Exception in thread “main” java.lang.RuntimeException: Uncompilable source code - Erroneous sym type: Dados.Conta.saca
at Procedimentos.Programa.main(Programa.java:21)
Java Result: 1
CONSTRUÍDO COM SUCESSO (tempo total: 0 segundos)
veja se não é o tipo de dado que está diferente, coloque todos como int ou todos como double
Não seria mais fácil simplesmente copiar o exemplo da apostila pra estudar?