private void botaoImpostos_Click(object sender, EventArgs e) { ContaCorrente conta = new ContaCorrente(); conta.Deposita(200.0); MessageBox.Show("imposto da conta corrente = " + conta.CalculaTributo()); ITributavel t = conta; MessageBox.Show("imposto da conta pela interface = " + t.CalculaTributo()); SeguroDeVida sv = new SeguroDeVida(); MessageBox.Show("imposto do seguro = " + sv.CalculaTributo()); t = sv; MessageBox.Show("imposto do seguro pela interface" + t.CalculaTributo()); }
public void Adiciona(ITributavel tributavel) { this.Total += tributavel.CalculaTributo(); }
public void Acumula(ITributavel ct) //Vai passar aqui a conta que é tributavel { this.Total += ct.CalculaTributo(); }
public void Acumula(ITributavel t) { Total += t.CalculaTributo(); }
public void Adiciona(ITributavel t) // Acumula imposto { this.Total += t.CalculaTributo(); }
public void Adiciona(ITributavel tributavel) { Total += tributavel.CalculaTributo(); }
public void Adiciona(ITributavel tr) { Totalizador += tr.CalculaTributo(); }
public void Acumula(ITributavel conta) { // Com a Interface garantimos que o objeto passado em conta terá o método CalculaTributo, nesse exemplo this.Total += conta.CalculaTributo(); }
public void Acumula(ITributavel cp) { this.Total += cp.CalculaTributo(); }
/*para não precisar usar dessa forma, podemos usar a interface abaixo (ITributavel)*/ //public void Acumula(ContaPoupanca cp) { // Total += cp.CalculaTributo(); //} //public void Acumula(ContaInvestimento ci) { // Total += ci.CalculaTributo(); //} /*usando interface ITributavel*/ public void Acumula(ITributavel t) { this.Total += t.CalculaTributo(); //o problema de somar dessa forma é que //o programa soma com o total de outro cálculo (??) }
public void Acumula(ITributavel it) { this.Total += it.CalculaTributo(); }