У меня все еще есть сомнения насчет object
. Это основной базовый класс всего, любого класса. Но это ссылочный тип или тип значения. Или как какой из этих актов это? Мне нужно это уточнить. Мне трудно это понять.
object obj1 = "OldString";
object obj2 = obj1;
obj1 = "NewString";
MessageBox.Show(obj1 + " " + obj2);
//Output is "NewString OldString"
В этом случае он действует как тип значения. Если объект был ссылочным типом, то почему значение obj2 по-прежнему «OldString»
class SampleClass
{
public string Text { get; set; }
}
SampleClass Sample1 = new SampleClass();
Sample1.Text="OldText";
object refer1 = Sample1;
object refer2 = refer1;
Sample1.Text = "NewText";
MessageBox.Show((refer1 as SampleClass).Text + (refer2 as SampleClass).Text);
//OutPut is "NewText NewText"
В этом случае он действует как ссылочный тип
Мы можем сделать вывод, что тип object
— это то, что вы упаковываете внутри него. Это может быть как ссылочный тип, так и тип значения. Это о том, что вы коробите внутри. Я прав?