示例#1
0
        /// <summary>
        /// The main.
        /// </summary>
        /// <param name="args">
        /// The args.
        /// </param>
        public static void Main(string[] args)
        {
            IDescriptor <Car>       desk1 = new Descriptor1();
            IDescriptor <Hatchback> desk2 = new Description2();

            try
            {
                desk1 = (IDescriptor <Car>)desk2;
            }
            catch (Exception exception)
            {
                // throw new Exception("Exception");
                Console.WriteLine("Невозможное преобразование");
            }

            desk2 = desk1;

            IDescriptor1 <Car>       create1 = new Creating1();
            IDescriptor1 <Hatchback> create2 = new Creating2();

            create1 = create2;

            try
            {
                create2 = (IDescriptor1 <Hatchback>)create1;
            }
            catch (Exception exception)
            {
                Console.WriteLine("Erorr");
            }
        }