Ответы пользователя по тегу C
  • Понять язык c# (да и вообще ООП, наверное)?

    szKarlen
    @szKarlen
    Почему (?) мы можем объявить объект экземпляра вложенного класс (В) вот так:

    new A.B()

    Класс В не является статичным же.
    И почему (?) мы не можем его определить вот так:

    A a = new A();
    new a.B();

    при создании экземпляра класса используется его полное имя, даже если он объявлен внутри другого класса.
    статичность класса здесь не причем. класс B содержится в описании класса A и никак не связан с его экземплярами.

    >Для чего нужны статичные классы? Наследовать и создавать объекты нельзя же.
    Это экзотическая альтернатива неймспейсов? Что можно с ними делать?

    они необходимы при создании, например, Extension Methods.
    public static class MyExtensionProvider
    {
    public static void DoSomething(this Object targetObject)
    {
    return;
    }
    }


    про оператор as уже ответили.
    Ответ написан
    1 комментарий