using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace specialise
{
    enum RACE { INCONNU, GOLDEN, CAIRN, DANDIE, SHETLAND, DOBERMAN, LAB };

    public class Mammifere
    {
        // propriétés automatique
        public int Age { get; set; }
        // constructeurs 
        public Mammifere(int age)
        {
            Age = age;
        }
        //methodes
        public void Crier() { Console.WriteLine("Raaaa"); }
    }

    class Chien : Mammifere
    {  // propiété auto
        public RACE Race { get; set; }
        // ctor 1
        public Chien(int age, RACE race)
            : base(age)
        {
            Race = race;
        }
        // specialisation
        // new est optionnel => evite warning compilateur
        //new précise l'intention du concepteur de spécialisé la méthode
        public new void Crier()
        { Console.WriteLine("Ouarfff"); }
    };


    class specialise
    {
        static void Main(string[] args)
        {
            Mammifere unMamifere = new Mammifere(10);
            unMamifere.Crier();
            Chien unChien = new Chien(5, RACE.GOLDEN);
            unChien.Crier();
            Console.ReadKey();
        }
    }
}
