Difference between revisions of "Exercício herança (Pessoa)"
(New page: == Enunciado == Seguindo a especificação abaixo, desenvolva em C# três classes: Pessoa, PessoaFisica e PessoaJuridica, todas do namespace ExercicioHeranca. *Pessoa: deverá ter um mét...) |
(→Enunciado) |
||
(3 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
== Enunciado == | == Enunciado == | ||
− | Seguindo a especificação abaixo, desenvolva | + | |
+ | === Etapa 1 === | ||
+ | Seguindo a especificação abaixo, desenvolva três classes: Pessoa, PessoaFisica e PessoaJuridica, todas do namespace/pacote ExercicioHeranca. | ||
*Pessoa: deverá ter um método abstrato de nome '''CalcularTarifa''' que deverá retornar um double e não receber parâmetros. | *Pessoa: deverá ter um método abstrato de nome '''CalcularTarifa''' que deverá retornar um double e não receber parâmetros. | ||
− | *PessoaFisica: deverá herdar de '''Pessoa''', ter duas propriedades públicas '''Nome''' e '''Saldo''' respectivamente do tipo string e double além de implementar o método '''CalcularTarifa''' que deverá retornar '''Saldo''' multiplicado por 0.1. | + | *PessoaFisica: deverá herdar de '''Pessoa''', ter duas propriedades públicas '''Nome''' e '''Saldo''' respectivamente do tipo string/String e double além de implementar o método '''CalcularTarifa''' que deverá retornar '''Saldo''' multiplicado por 0.1. |
− | *PessoaJuridica: deverá herdar de '''Pessoa''', ter também duas propriedades públicas '''RazaoSocial''' (string) e '''Limite''' (double). A implementação do método '''CalcularTarifa''' deverá retornar '''Limite''' multiplicado por 0.2. | + | *PessoaJuridica: deverá herdar de '''Pessoa''', ter também duas propriedades públicas '''RazaoSocial''' (string/String) e '''Limite''' (double não negativo). A implementação do método '''CalcularTarifa''' deverá retornar '''Limite''' multiplicado por 0.2. |
+ | |||
+ | Sempre que o usuário tentar setar o valor de '''Limite''' para um número negativo deve-se lançar uma exceção com a mensagem "Limite deve ser um número positivo ou zero". | ||
Crie os atributos e outros mecanismos necessários para implementar o solicitado. | Crie os atributos e outros mecanismos necessários para implementar o solicitado. | ||
+ | |||
+ | === Etapa 2 === | ||
+ | Em PessoaFisica crie duas propriedades somente leitura: '''Credito''' e '''Debito'''. '''Crédito''' exibirá o valor de '''Saldo''' quando este for positivo ou zero caso contrário. '''Débito''' exibirá o oposto do valor de '''Saldo''' quando este for negativo ou zero caso contrário. | ||
+ | |||
+ | === Etapa 3 === | ||
+ | Mova as propriedades '''Credito''', '''Debito''' e '''Saldo''' para '''Pessoa''' e faça os ajustes necessários. | ||
+ | |||
+ | === Etapa 4 === | ||
+ | Em PessoaJuridica lance uma exceção e não permita que o valor de '''Saldo''' seja setado para um valor menor que o oposto do '''Limite'''. |
Latest revision as of 16:56, 4 August 2010
Enunciado
Etapa 1
Seguindo a especificação abaixo, desenvolva três classes: Pessoa, PessoaFisica e PessoaJuridica, todas do namespace/pacote ExercicioHeranca.
- Pessoa: deverá ter um método abstrato de nome CalcularTarifa que deverá retornar um double e não receber parâmetros.
- PessoaFisica: deverá herdar de Pessoa, ter duas propriedades públicas Nome e Saldo respectivamente do tipo string/String e double além de implementar o método CalcularTarifa que deverá retornar Saldo multiplicado por 0.1.
- PessoaJuridica: deverá herdar de Pessoa, ter também duas propriedades públicas RazaoSocial (string/String) e Limite (double não negativo). A implementação do método CalcularTarifa deverá retornar Limite multiplicado por 0.2.
Sempre que o usuário tentar setar o valor de Limite para um número negativo deve-se lançar uma exceção com a mensagem "Limite deve ser um número positivo ou zero".
Crie os atributos e outros mecanismos necessários para implementar o solicitado.
Etapa 2
Em PessoaFisica crie duas propriedades somente leitura: Credito e Debito. Crédito exibirá o valor de Saldo quando este for positivo ou zero caso contrário. Débito exibirá o oposto do valor de Saldo quando este for negativo ou zero caso contrário.
Etapa 3
Mova as propriedades Credito, Debito e Saldo para Pessoa e faça os ajustes necessários.
Etapa 4
Em PessoaJuridica lance uma exceção e não permita que o valor de Saldo seja setado para um valor menor que o oposto do Limite.