Распределение памяти в Java - PullRequest
2 голосов
/ 17 апреля 2010
class Someobject
{
  int i=10;
}

public class OtherObject
{
  public static void main(String args[])
  {
    Someobject obj=new Someobject();
    System.out.println(obj.i);
  }
}

Подскажите пожалуйста, в каком разделе памяти:

  1. Будет загружен весь этот код.
  2. Где будет храниться someobject.
  3. Где будет храниться obj
  4. Где будет храниться i.

Спасибо всем заранее.

1 Ответ

4 голосов
/ 17 апреля 2010
  1. Код / классы будут загружаться в PermGenSpace
  2. Объекты создаются в HEAP
  3. Ссылка на объект сохраняется в стеке
  4. i является частью экземпляра SomeObject, который находится в HEAP.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...