Ashfaque Hussain Ответов: 1

Сколько памяти будет выделено?


class A
{
    public A()
    {
        Console.WriteLine("Default A");
    }

    public A(int a)
    {
        Console.WriteLine("Parameterized A");
    }
}

class B : A
{
    public B()
    {
        Console.WriteLine("Default B");
    }

    public B(int a)
    {
        Console.WriteLine("Parameterized B");
    }
}


Что я уже пробовал:

How much memory will allocate if we call:

A a = new B();

and

A a = new A();

1 Ответов

Рейтинг:
1

OriginalGriff

То же самое для обоих: выделение памяти-это поля, которые содержит класс (плюс идентификатор типа класса), а не фактические методы, которые содержит класс. Одна их копия-это все, что существует, и она находится в вашем коде, а не в куче или стеке.