Пример #1
0
        static void Main(string[] args)
        {
            Human human = new Human("Grisha", "Bulgak", 2002);

            Reflector.ClassInformationToFile(human);
            Reflector.GetClassMethods("Lab12.Human", "System.Int32");
            Reflector.CallMethod(human, "Analyze");
            var human1 = Reflector.Create(typeof(Human));
        }
Пример #2
0
        static void Main(string[] args)
        {
            Console.WriteLine("--------- Класс Parrot ---------");
            Reflector.GetAssemblyInfo("Lab04.Parrot");
            Reflector.GetPublicCtors("Lab04.Parrot");
            Console.WriteLine("Все общедоступные публичные методы класса: ");
            foreach (var i in Reflector.GetPublicMethods("Lab04.Parrot"))
            {
                Console.WriteLine(i);
            }
            Console.WriteLine("\tПоля и свойства класса: ");
            foreach (var i in Reflector.GetInfoFieldProperty("Lab04.Parrot"))
            {
                Console.WriteLine(i);
            }
            Console.WriteLine("\tИнтерфейсы");
            foreach (var i in Reflector.GetInterface("Lab04.Parrot"))
            {
                Console.WriteLine(i);
            }
            Console.WriteLine("Методы, содержащие параметр типа int: ");
            Reflector.GetMethodByType("Lab04.Parrot", typeof(int));
            Console.WriteLine("Invoke: ");
            Reflector.InvokeMethod("Lab04.Parrot", "Eat");


            Console.WriteLine("--------- Класс Fish ---------");
            Reflector.GetAssemblyInfo("Lab06.Fish");
            Reflector.GetPublicCtors("Lab06.Fish");
            Console.WriteLine("Все общедоступные публичные методы класса: ");
            foreach (var i in Reflector.GetPublicMethods("Lab06.Fish"))
            {
                Console.WriteLine(i);
            }
            Console.WriteLine("\tПоля и свойства класса: ");
            foreach (var i in Reflector.GetInfoFieldProperty("Lab06.Fish"))
            {
                Console.WriteLine(i);
            }
            Console.WriteLine("\tИнтерфейсы");
            foreach (var i in Reflector.GetInterface("Lab06.Fish"))
            {
                Console.WriteLine(i);
            }
            Console.WriteLine("Методы, содержащие параметр типа strng: ");
            Reflector.GetMethodByType("Lab06.Fish", typeof(string));
            Console.WriteLine("Invoke: ");
            Reflector.InvokeMethod("Lab06.Fish", "Sleep");


            var i1 = Reflector.Create(typeof(Lab04.Parrot));
            var i2 = Reflector.Create(typeof(Lab06.Fish));
            var i3 = Reflector.Create(typeof(System.Int32));

            Console.WriteLine(i1 + "\n" + i2 + "\n" + i3);
        }
Пример #3
0
        static void Main(string[] args)
        {
            Console.WriteLine(Reflector.toFile(typeof(List <int>), typeof(int), "IntListInfo.txt") + "\n");
            Console.WriteLine(Reflector.toFile(typeof(string), typeof(string), "StringInfo.txt") + "\n");
            Console.WriteLine(Reflector.toFile(typeof(CList <char>), typeof(char), "CharCListInfo.txt") + "\n");
            Console.WriteLine(Reflector.toFile(typeof(Logger), typeof(Exception), "LoggerInfo.txt") + "\n");
            Console.WriteLine(Reflector.Invoke(typeof(Math), "Pow", "params.txt"));
            Console.WriteLine(Reflector.Invoke(typeof(Math), "Pow"));
            List <int> intList = (List <int>)Reflector.Create(typeof(List <int>), new int[] { 10, 12, 13 });

            foreach (int number in intList)
            {
                Console.Write(number + " ");
            }
        }
Пример #4
0
        static void Main(string[] args)
        {
            Rectangle rec = new Rectangle();

            Reflector.Analize(rec, @"D:\Epam\OOP\Lab12\Lab12\Out.txt");
            Reflector.GetMethods(rec, @"D:\Epam\OOP\Lab12\Lab12\Out.txt");
            Console.WriteLine(rec.area());
            Reflector.Invoke(rec, @"D:\Epam\OOP\Lab12\Lab12\In.txt");
            Console.WriteLine(rec.area());

            object rectangle = Reflector.Create(rec);

            Console.WriteLine(rectangle.ToString());
            Console.ReadKey();
        }
Пример #5
0
        static void Main(string[] args)
        {
            User user = new User();

            user.Name = "Alex";
            user.Age  = 20;

            Reflector.GetAssemblyBuild(user);
            Reflector.CheckPublicConstructors(user);
            Reflector.GetPublicPublicMethods(user);
            Reflector.GetPublicFieldProperties(user);
            Reflector.GetRealisedInterfaces(user);
            Reflector.SearchMethodByParameterType(user, typeof(string).Name);

            object[] parms  = { "name", 2 };
            User     newObj = (User)Reflector.Create(user, parms);

            Console.WriteLine($"Name: {newObj.Name}\nAge: {newObj.Age}");
        }
Пример #6
0
        static void Main(string[] args)
        {
            Console.WriteLine("\nTask1");
            Passenger pass1 = new Passenger("Mark", "Moscow")
            {
            };
            Type type1 = pass1.GetType();

            Console.WriteLine($"\nТип: {type1}");

            Console.WriteLine($"\n{type1} Сборка :");
            Reflector.AssemblyName(pass1);

            Console.WriteLine($"\n{type1} Конструкторы:");
            Reflector.PublicConstructors(pass1);

            Console.WriteLine($"\n{type1} Методы:");
            Reflector.Methods(pass1);

            Console.WriteLine($"\n{type1} Свойства:");
            Reflector.Properties(pass1);

            Console.WriteLine($"\n{type1} Поля:");
            Reflector.Fields(pass1);

            Console.WriteLine($"\n{type1} Интерфейсы:");
            Reflector.Interfaces(pass1);

            string p = "String";

            Console.WriteLine($"\n{type1} Методы с параметром {p}:");
            Reflector.MethodsByParametr(pass1, p);

            Console.WriteLine($"\nВызывыем метод:");
            Reflector.Invoke(pass1, "Remake", Reflector.ParamsGenerater("Lab12.Passenger", "Remake"));

            Console.WriteLine($"\nВызывыем метод:");
            Reflector.Invoke(pass1, "Remake", Reflector.FileRead("Lab12.Passenger", "Remake"));

            Book <int, string> book1 = new Book <int, string>(2, "book1");
            Type type2 = book1.GetType();

            Console.WriteLine($"\nТип: {type2}");

            Console.WriteLine($"\n{type2} Сборка :");
            Reflector.AssemblyName(book1);

            Console.WriteLine($"\n{type2} Конструкторы:");
            Reflector.PublicConstructors(book1);

            Console.WriteLine($"\n{type2} Методы:");
            Reflector.Methods(book1);

            Console.WriteLine($"\n{type2} Свойства:");
            Reflector.Properties(book1);

            Console.WriteLine($"\n{type2} Поля:");
            Reflector.Fields(book1);

            Console.WriteLine($"\n{type2} Интерфейсы:");
            Reflector.Interfaces(book1);

            string p2 = "Int32";

            Console.WriteLine($"\n{type2} Методы с параметром {p2}:");
            Reflector.MethodsByParametr(book1, p2);

            Console.WriteLine($"\nВызывыем метод:");
            Reflector.Invoke(book1, "BookRename", Reflector.ParamsGenerater("Lab12.Book`2[System.Int32,System.String]", "BookRename"));

            Console.WriteLine($"\nВызывыем метод:");
            Reflector.Invoke(book1, "BookRename", Reflector.FileRead("Lab12.Book`2[System.Int32,System.String]", "BookRename"));

            Assembly.LoadFrom(@"C:\z\Visual Studio Projects\OOP\LibraryAirline\LibraryAirline\obj\Debug\LibraryAirline.dll");

            Console.WriteLine("\nTask2");
            Console.WriteLine($"Создаём объект:");
            Type type3 = pass1.GetType();

            Reflector.Create(type3);
        }