Baixe o app para aproveitar ainda mais
Prévia do material em texto
Programação Orientada a Objetos Aula 03 P R O F. D R . F E R N A N D O T. F E R N A N D E S Herança Fonte: Ntu.edu Herança public abstract class Forma { protected double Base {get; set;} protected double Altura {get; set;} public abstract double CalcularArea(); } class Retangulo : Forma{ public Retangulo (double bas, double altura) { base.Base = bas; base.Altura = altura; } public override double CalcularArea() { return base.Base * base.Altura; } } Classe Retângulo HERDA da classe Forma Polimorfismo – Diferentes comportamentos nas classes filhas class Retangulo : Forma{ public Retangulo (double bas, double altura) { base.Base = bas; base.Altura = altura; } public override double CalcularArea() { return base.Base * base.Altura; } } class Triangulo : Forma{ public Triangulo (double bas, double altura) { base.Base = bas; base.Altura = altura; } public override double CalcularArea() { return (base.Base * base.Altura)/2; } } Polimorfismo public abstract class Animal{ protected string Nome {get; set;} protected int Idade {get; set;} public abstract void EmitirSom(); } public class Cachorro : Animal{ public override void EmitirSom() { Console.WriteLine("Latindo..."); } } public class Gato : Animal{ public override void EmitirSom() { Console.WriteLine("Miando..."); } } class Program { public static void Main (string[] args) { Cachorro c1 = new Cachorro(); c1.EmitirSom(); Gato g1 = new Gato(); g1.EmitirSom(); } } Sobrecarga – Várias versões de um método public abstract class Animal{ protected string Nome {get; set;} protected int Idade {get; set;} public abstract void EmitirSom(); public abstract void EmitirSom(string texto); } public class Cachorro : Animal{ public override void EmitirSom() { Console.WriteLine("Latindo..."); } public override void EmitirSom(string texto) { Console.WriteLine(texto); } } public class Gato : Animal{ public override void EmitirSom() { Console.WriteLine("Miando..."); } public override void EmitirSom(string texto) { Console.WriteLine(texto); } } class Program { public static void Main (string[] args) { Cachorro c1 = new Cachorro(); c1.EmitirSom(); Gato g1 = new Gato(); g1.EmitirSom(“Miando alto”); } } Exemplo - VSCode public abstract class Animal{ protected string Nome {get; set;} = string.Empty; protected int Idade {get; set;} = 0; public abstract void EmitirSom(); public abstract void EmitirSom(string texto); } public class Cachorro:Animal{ public override void EmitirSom(){ Console.WriteLine("Latindo..."); } public override void EmitirSom(string texto){ Console.WriteLine(texto); } } public class Gato:Animal{ public override void EmitirSom(){ Console.WriteLine("Miando..."); } public override void EmitirSom(string texto){ Console.WriteLine(texto); } } 2) Criar as classes1) Criar o projeto – dotnet new console –o <nomeprojeto> 3) Instanciar os objetos 4) Executar o programa Exemplo de classe e objetos https://replit.com/@professorfernandotfernandes/orientacaoobjetos3#main.cs Em C# https://replit.com/@professorfernandotfernandes/orientacaoobjetos3b#main.cs https://replit.com/@professorfernandotfernandes/orientacaoobjetos3#main.cs https://replit.com/@professorfernandotfernandes/orientacaoobjetos3b#main.cs Slide 1: Programação Orientada a Objetos Aula 03 Slide 2: Herança Slide 3: Herança Slide 4: Polimorfismo – Diferentes comportamentos nas classes filhas Slide 5: Polimorfismo Slide 6: Sobrecarga – Várias versões de um método Slide 7: Exemplo - VSCode Slide 8: Exemplo de classe e objetos
Compartilhar