Example #1
0
        static void Main(string[] args)
        {
            var persoon = new Student();
            persoon.VerhoogDeLeeftijd();
            persoon.VerhoogDeLeeftijd();
            persoon.VerhoogDeLeeftijd();
            persoon.VerhoogDeLeeftijd();

            var field = persoon.GetType().GetField("_leeftijd", BindingFlags.NonPublic | BindingFlags.Instance);
            var value = field.GetValue(persoon);

            Console.WriteLine(value);

            Persoon p2 = new Persoon(123);
            foreach (var f in p2.GetType().GetFields(BindingFlags.NonPublic | BindingFlags.Instance))
            {
                object v = f.GetValue(persoon);
                f.SetValue(p2, v);
            }

            Console.WriteLine(p2);

            Persoon p3 = new Persoon(23123);
            p3.Reinitialize();

            MyDemoStruct st = new MyDemoStruct(4);
            st.Reinitialize();

            Console.WriteLine(st.Data);
        }