нет, не может
upd:
не нужно путать общий размер занимаемой памяти и размер объекта. В loh попадет условный массив на 100мб/ большая строка. Но объект который ссылается на это - нет, т.к. в нем будет только ссылка весом в пару байт.
подозреваю что вы думали о чем-то таком
public class TestClass
{
public byte[] Bytes;
public TestClass(byte[] bytes)
{
Bytes = bytes;
}
public void Upd()
{
Bytes = new byte[101 * 1024 * 1024];
}
}
...
static void Main(string[] args)
{
var data = new TestClass[3];
for (int i = 0; i < 3; i++)
{
data[i] = new TestClass(new byte[1]);
}
data[1].Upd();
}
но нет, это не заставит переиестить объект с soh -> loh, т.к. в loh попадет только массив, а в объекте будет просто ссылка. И если заглянуть в память - это видно