´´´ Ao compilar meu código o Java me retorna este erro:
C:\Users\Everton\Google Drive\workspace\Alura>javac Conta.java Conta.java:39: error: non-static variable this cannot be referenced from a static context ContaCorrente cc = new ContaCorrente(); ^ Conta.java:40: error: non-static variable this cannot be referenced from a static context ContaPoupanca cp = new ContaPoupanca(); ^ Conta.java:37: error: Illegal static declaration in inner class Conta.TestaContas public static void main(String[] args){ ^ modifier 'static' is only allowed in constant variable declarations 3 errors
E não Consigo Descobrir o porque...
Segue meu Código, salvo com nome de arquivo Conta.java
public class Conta{
protected double saldo;
public double getSaldo() {
return this.saldo;
}
public void deposita(double valor) {
this.saldo += valor;
}
public void saca(double valor) {
this.saldo -= valor;
}
public void atualiza(double taxa){
this.saldo += this.saldo * taxa;
}
public class ContaCorrente extends Conta{
public void deposita(double valor) {
this.saldo += (valor - 0.10);
}
public void atualiza(double taxa){
this.saldo += this.saldo * taxa * 2;
}
}
public class ContaPoupanca extends Conta{
public void atualiza(double taxa) {
this.saldo += this.saldo * taxa * 3;
}
public void deposita(double valor) {
this.saldo += valor - 0.10;
}
}
public class TestaContas {
public static void main(String[] args){
Conta c = new Conta();
ContaCorrente cc = new ContaCorrente();
ContaPoupanca cp = new ContaPoupanca();
c.deposita(1000);
cc.deposita(1000);
cp.deposita(1000);
c.atualiza(0.01);
cc.atualiza(0.01);
cp.atualiza(0.01);
System.out.println(c.getSaldo());
System.out.println(cc.getSaldo());
System.out.println(cp.getSaldo());
}
}
}