Solução: CSharp: Exercício herança (Pessoa) (Anderson Martins)
From AdonaiMedrado.Pro.Br
Revision as of 00:17, 8 April 2009 by 200.17.147.2 (Talk)
public abstract class Pessoa { protected double _Saldo; public abstract double Saldo {get;set;} public abstract double CalcularTarifa(); public double Credito { get { if (this.Saldo > 0) return this.Saldo; else return 0; } } public double Debito { get { if (this.Saldo < 0) return this.Saldo * -1 ; else return 0; } } } public class PessoaFisica : Pessoa { private string _Nome; public string Nome { get { return _Nome; } set { this._Nome = value; } } public override double Saldo { get {return _Saldo;} set {this._Saldo = value;} } public override double CalcularTarifa(){ return this.Saldo * 0.1; } } public class PessoaJuridica : Pessoa { private string _RazaoSocial; public string RazaoSocial { get { return _RazaoSocial; } set { this._RazaoSocial = value; } } private double _Limite; public double Limite { get { return _Limite; } set { if(value >= 0) this._Limite = value; else throw new InvalidOperationException("Limite nao pode ser negativo"); } } public override double Saldo { get {return _Saldo;} set { if(value < this._Limite * -1) throw new InvalidOperationException("Limite excedido"); else this._Saldo = value; } } public PessoaJuridica() { } public override double CalcularTarifa () { return this.Limite * 0.2; } }