public void HizDegistir(int gazYuzdesi, object sender) { if (sender is Sofor) { Sofor = sender as Sofor; } _mevcutHiz = _maxHiz * gazYuzdesi / 100; Console.WriteLine(_plaka + " plakalı arabanın şu anki hızı: " + _mevcutHiz + " km"); BenHizlandim(_mevcutHiz, this); //bilgiyi veren tarafta tetiklenir. }
static void Main(string[] args) { //hızlanan bir araç 120 km hızı geçtikten sonra polis ceza kessin. //sofor ,gaza basacak //araba gaza basıldığında hızlanacak //polis nesnesi araba 120 km geçtiğinde ceza kesecek //1.sprint gaz değeri verildiğinde hızlanan araba. Araba araba = new Araba(200, "34 hf 1387"); //araba.HizDegistir(95); //Console.ReadKey(); //2.sprint polis 120 yi geçen arabaya ceza kessin. Polis polis = new Polis("Osman Yazıcı"); araba.BenHizlandim += polis.HiziKontrolEt;//dinleme //Toz Toz toz = new Toz(); araba.BenHizlandim += toz.Ucus; //Asfalt Asfalt asfalt = new Asfalt(); toz.TozUcustu += asfalt.Agla; //araba.HizDegistir(95); //3. sprint söfor gaza bastıkca hızlanacaz. Sofor sofor = new Sofor("Alafortan Foni"); sofor.GazaBastim += araba.HizDegistir; sofor.GazaBas(60); Console.ReadKey(); }