\

Školení Návrhové vzory, OOP a UML


 Thursday, August 25, 2005
Programátorská hádanka

Dokážete napsat jeden řádek kódu, kterým přířadíte statickému členu BField řetězec  "Milujeme porušování zapouzdření"? ;)

        sealed class A
        {
            private sealed class B
            {                    
                            private static string BField;
             
                        }
                    }


Thursday, August 25, 2005 3:49:16 PM (Central Europe Standard Time, UTC+01:00)       
Comments [3]  


Thursday, August 25, 2005 4:56:48 PM (Central Europe Standard Time, UTC+01:00)
tento riadok kodu to zvladne

((FieldInfo) System.Reflection.Assembly.GetExecutingAssembly().GetType("A+B").FindMembers(MemberTypes.All, BindingFlags.NonPublic | BindingFlags.Static, null, "BField")[0]).SetValue(null, "Milujeme porušování zapouzdření");

overit sa to v konzolovej aplikacii da aj takto

Console.WriteLine(((FieldInfo) System.Reflection.Assembly.GetExecutingAssembly().GetType("A+B").FindMembers(MemberTypes.All, BindingFlags.NonPublic | BindingFlags.Static, null, "BField")[0]).GetValue(null));
Thursday, August 25, 2005 7:30:05 PM (Central Europe Standard Time, UTC+01:00)
Ja volil trochu jiny zacatek :)

typeof(A).GetNestedTypes(BindingFlags.NonPublic)[0].GetFields(BindingFlags.Static | BindingFlags.NonPublic)[0].SetValue(null, "Milujeme porušování zapouzdření");
pvasek
Friday, August 26, 2005 7:22:15 AM (Central Europe Standard Time, UTC+01:00)
Vyborne. Potlesk pro oba ;)
Comments are closed.