Доброе время суток!
Обьясните, как правильно понимать создание класса.
Например, SomeClass sc = new SomeClass();
Я понимаю эту запись как создай класс sc от класса SomeClass и запусти конструктор SomeClass(). Это верно?
Т.е. часть SomeClass sc или если записать так SomeClass sc; то это по сути ссылка?
Я также понимаю, что можно записать так:
string param = Console.ReadLine();
DocumentWorker doc = null;
if (param == "pro")
{
doc = new ProDocumentWorker();
}
else if (param == "exp")
{
doc = new ExpertDocumentWorker();
}
else
{
doc = new DocumentWorker();
}
doc.OpenDocument();
doc.EditDocument();
doc.SaveDocument();
В этом (DocumentWorker doc = null;) случае ссылка будет вести в null?
Вместо DocumentWorker я могу писать что угодно? - но тога почему выдает ошибку, если DocumentWorker doc = null; заменить на AAA doc = null;?