все сработает и выведется "Meow", а не вывалится ошибка? Ведь в этом месте мы переменную Cat cat = null; не инициализировали. Можно в личку, что бы эфир не засорять.
class Program
{
static void Main()
{
Cat cat = null;
cat.SaySomething();
}
}
public class Cat { }
public static class Extensions
{
public static void SaySomething(this Cat cat)
{
Console.WriteLine("Meow!");
}
}
потому что методу расширения пофиг что там с главным обьектом
Обсуждают сегодня