Je suis en train d'écrire un programme qui garde la trace de différentes transactions fait au fil du temps. J'ai une classe principale, et aussi une autre classe nommée CheckingAccount.java
.Appel d'un objet de classe externe à partir de la fonction sur la classe principale
J'ai une classe principale formatée de cette façon.
public class Main
{
public static void main (String[] args)
{
CheckingAccount c = new CheckingAccount(bal);
--line of code---
--line of code---
--line of code---
}
public static int getTransCode()
{
--line of code---
}
public static double getTransAmt()
{
--line of code---
}
public static void processCheck(double trAm, int tCode, boolean monthCh)
{
double curCharge=0.15;
CheckingAccount.setBalance(trAm,tCode,curCharge,monthCh);
CheckingAccount.setServiceCharge(curCharge);
}
public static void processDeposit(double trAm, int tCode, boolean monthCh)
{
double curCharge=0.10;
CheckingAccount.setBalance(trAm,tCode,curCharge,monthCh);
CheckingAccount.setServiceCharge(curCharge);
}
}
Ceci est mon CheckingAccount.java
public class CheckingAccount
{
private double balance;
private double totalServiceCharge;
public CheckingAccount(double initialBalance)
{
balance = initialBalance;
totalServiceCharge = totalServiceCharge;
}
public double getBalance()
{
return balance;
}
public void setBalance(double tAm, int Code, double charge, boolean mChrg)
{
if(tCode == 1)
balance = (balance - tAm) - charge;
else //if(tCode == 2)
balance = (balance + tAm) - charge;
}
public double getServiceCharge()
{
return totalServiceCharge;
}
public void setServiceCharge(double currentServiceCharge)
{
totalServiceCharge = totalServiceCharge+currentServiceCharge;
}
}
Ainsi, les lignes que je ne peux pas se rendre au travail sont CheckingAccount.setBalance()
et CheckingAccount.setServiceCharge()
dans les fonctions de ma classe principale. Ce que j'essaie de faire est d'appeler les méthodes que j'ai créées (setBalance
et setServiceCharge
) dans ma classe, à partir des fonctions que j'ai créées sur ma classe principale (processCheck
et processDeposit
).
Mais je n'arrive pas à l'exécuter, je continue à courir avec ces messages d'erreur.
méthode non statique setBalance (double, int, double, boolean) ne peut être référencé à partir d'un contexte statique CheckingAccount.setBalance (TRAM, tcode, curCharge, monthCh);
+1 Nice spot sur la 'totalService', manqués: P – MadProgrammer
Merci, je vous remercie de votre aide. Cela a fonctionné parfaitement. –