Я видел много людей, говорящих о наследовании в C#, как примитивные типы, происходят из System.Object, и они некоторое время передают целое число, string ... для объекта в качестве аргументов методам. У меня есть несколько вопросов в голове, которые меня смутили.Является ли System.object примитивным?
1) Является ли System.Object самим примитивным типом?
Согласно моему пониманию полученных классов изощренные версии базового класса
2) Как System.Object поймать аргументы (String, Int ..) в методах, как
public void objcttest(object objct)
{
if(objct is string)
var strng = (string)objct;
}
3) Что это означает, используя классы, определенные в приведенном выше изображении?
Object objct = new WorkItem(); // how is the object of the base class type instantiated with derived class type
Это сформулировано довольно смутно ... –
Слишком широкий вопрос. Вы должны разделить их на 3 вопроса (и 2 и 3 здесь уже упоминаются на SO). Чтобы ответить сначала, объект не является примитивным (несколько базовых типов, таких как int, bool и т. Д. - type.IsPrimitive() дает вам это). – nawfal
Найдите учебное пособие по C# и ссылочным типам. –