public static void Main() { Aircraft aircraft1 = new Aircraft(); aircraft1.ShowInfoAir(); // Сериализация созданного экземпляра обьекта Aircraft №1 //Aircraft.Serialize(aircraft1); // СНЯТЬ КОММЕНТАРИЙ // Десериализация экземпляра обьекта Aircraft №1 //aircraft1 = Aircraft.DeSerialize(); // СНЯТЬ КОММЕНТАРИЙ // Подписка на событие Takeoff aircraft1.Takeoff += new TakeoffEventHandler(aircraft1.TakeoffHandler); // Взлет - вызов события Takeoff TakeoffEventArgs argTakeoff = new TakeoffEventArgs(300, 5, 600); aircraft1.OnTakeoff(argTakeoff); aircraft1.ShowInfoAir(); // Сериализация измененного экземпляра обьекта Aircraft №2 Aircraft.Serialize(aircraft1); // СНЯТЬ КОММЕНТАРИЙ // Десериализация экземпляра обьекта Aircraft №2 aircraft1 = Aircraft.DeSerialize(); // СНЯТЬ КОММЕНТАРИЙ // Подписка на событие Boarding aircraft1.Boarding += new BoardingEventHandler(aircraft1.BoardingHandler); // Посадка - вызов события Boarding BoardingEventArgs argBoard = new BoardingEventArgs(120); aircraft1.OnBoarding(argBoard); aircraft1.ShowInfoAir(); //Сериализация измененного экземпляра обьекта Aircraft №3 //Aircraft.Serialize(aircraft1); // СНЯТЬ КОММЕНТАРИЙ // Десериализация экземпляра обьекта Aircraft №3 //aircraft1 = Aircraft.DeSerialize(); // СНЯТЬ КОММЕНТАРИЙ }
//Обработчик события ВЗЛЕТ public void TakeoffHandler(object sender, TakeoffEventArgs arg) { this.ChangeSpeed(arg.Speed); this.ChangeHight(arg.Height); this.ChangeCourse(arg.Course); }
// Метод, запускающий событие ВЗЛЕТ public void OnTakeoff(TakeoffEventArgs arg) { Console.WriteLine($"\n*********************Самолет\0{this.ModelAir}\0взлетает!!"); Takeoff?.Invoke(this, arg); }