marczxc
16-01-2010, 17:00
Ciao a tutti. Come faccio a stampare a video con il metodo stampaConto se le variabili saldo e tasso sono private?
come posso fare? il metodo getConto non basta perchè poi dentro il println provo a riaccedere all'oggetto e giustamente il compilatore dà errore dicendo che sono private.
Così come è il programma mi da errore perchè dice che non trova le variabili getSaldo e getTasso. è tutto il pomeriggio che studio e non ci capisco più niente :muro:
Grazie a chi mi aiuta.
class Conto {
private double saldo;
private double tasso;
public Conto(double saldoIniziale, double tassoIniziale) {
saldo = saldoIniziale;
tasso = tassoIniziale;
}
public double getSaldo() {
return this.saldo;
}
public double getTasso() {
return this.tasso;
}
public void deposita(double importo) {
if(importo < 0) System.out.println("errore: valore negativo");
else saldo = saldo + importo;
}
public void preleva(double importo) {
if(importo < 0) System.out.println("errore: valore negativo");
else {
double nuovoSaldo = saldo - importo;
if(nuovoSaldo < 0) System.out.println("saldo insufficiente");
else saldo = nuovoSaldo;
}
}
public void trasferisci(double importo, Conto conto) {
if(importo < 0) System.out.println("errore: valore negativo");
else if(importo > saldo) System.out.println("saldo insufficiente");
else {
preleva(importo);
conto.deposita(importo);
}
}
public static void stampaConto(Conto a) {
System.out.println("Saldo = " + a.getSaldo + " Tasso = " + a.getTasso);
}
}
class Banca {
private Conto[] conti = new Conto[10];
private int numConti = 0;
public void creaConto(double saldoInizio, double tassoInizio) {
conti[numConti] = new Conto(saldoInizio, tassoInizio);
numConti++;
}
public Conto getConto(int num) {
return conti[num];
}
}
public class ProvaBanca {
public static void main(String[] args) {
Banca miaBanca = new Banca();
miaBanca.creaConto(30, 2.4);
miaBanca.creaConto(400000, 3.2);
miaBanca.getConto(1).deposita(0.25);
miaBanca.creaConto(0, 0);
miaBanca.getConto(1).trasferisci(300000,miaBanca.getConto(2));
Conto.stampaConto(miaBanca.getConto(0));
}
}
come posso fare? il metodo getConto non basta perchè poi dentro il println provo a riaccedere all'oggetto e giustamente il compilatore dà errore dicendo che sono private.
Così come è il programma mi da errore perchè dice che non trova le variabili getSaldo e getTasso. è tutto il pomeriggio che studio e non ci capisco più niente :muro:
Grazie a chi mi aiuta.
class Conto {
private double saldo;
private double tasso;
public Conto(double saldoIniziale, double tassoIniziale) {
saldo = saldoIniziale;
tasso = tassoIniziale;
}
public double getSaldo() {
return this.saldo;
}
public double getTasso() {
return this.tasso;
}
public void deposita(double importo) {
if(importo < 0) System.out.println("errore: valore negativo");
else saldo = saldo + importo;
}
public void preleva(double importo) {
if(importo < 0) System.out.println("errore: valore negativo");
else {
double nuovoSaldo = saldo - importo;
if(nuovoSaldo < 0) System.out.println("saldo insufficiente");
else saldo = nuovoSaldo;
}
}
public void trasferisci(double importo, Conto conto) {
if(importo < 0) System.out.println("errore: valore negativo");
else if(importo > saldo) System.out.println("saldo insufficiente");
else {
preleva(importo);
conto.deposita(importo);
}
}
public static void stampaConto(Conto a) {
System.out.println("Saldo = " + a.getSaldo + " Tasso = " + a.getTasso);
}
}
class Banca {
private Conto[] conti = new Conto[10];
private int numConti = 0;
public void creaConto(double saldoInizio, double tassoInizio) {
conti[numConti] = new Conto(saldoInizio, tassoInizio);
numConti++;
}
public Conto getConto(int num) {
return conti[num];
}
}
public class ProvaBanca {
public static void main(String[] args) {
Banca miaBanca = new Banca();
miaBanca.creaConto(30, 2.4);
miaBanca.creaConto(400000, 3.2);
miaBanca.getConto(1).deposita(0.25);
miaBanca.creaConto(0, 0);
miaBanca.getConto(1).trasferisci(300000,miaBanca.getConto(2));
Conto.stampaConto(miaBanca.getConto(0));
}
}