Форум программистов, компьютерный форум, киберфорум
Java SE (J2SE)
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.67/3: Рейтинг темы: голосов - 3, средняя оценка - 4.67
2 / 0 / 1
Регистрация: 22.09.2016
Сообщений: 34
1

Симулятор сборщика мусора

01.10.2016, 20:45. Просмотров 554. Ответов 1
Метки нет (Все метки)


Не очень понимаю как работает удаление мусора. В упражнении нужно добавить в место A код из правого столбика, который сможет "убить" ещё какой-нибудь объект, правильные ответы я выделил во вложении.

Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
public class GC {
    public static GC doStuff() {
        GC newGC = new GC();
        doStuff2(newGC);
        return newGC;
}
 
public static void main(String[] args) {
    GC gc1;
    GC gc2 = new GC();
    GC gc3 = new GC();
    GC gc4 = gc3;
    gc1 = doStuff();
    
    //A
    
    
}
 
public static void doStuff2(GC copyGC) {
    GC localGC;
   }
}


1. gc2 = null; - здесь понятно, так как ссылка на конкретный объект единственная и null её убирает и как следствие объект.
2. gc1 = null; Ссылка не ссылается явно на объект, но есть такая запись: gc1 = doStuff(). Это делает gc1 ссылкой объекта GC() в методе doStuff()? Как так?
3. В 12 строке: GC gc4 = gc3;. Эта запись означает, что у объекта GC() теперь две ссылки (gc4 и gc3) или gc4 теперь единственная ссылка?
4. Верная ли следующая последовательность:

В методе doStuff() есть ссылка newGC. Она переходит как параметр в метод doStuff2() и приравнивается copyGC, а затем localGC. В итоге localGC не ссылается ни на что, так как объект в другом классе.
0
Миниатюры
Симулятор сборщика мусора  
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
01.10.2016, 20:45
Ответы с готовыми решениями:

Очистка памяти без сборщика мусора
Доброго времени суток! Сдаём курсовую преподу по САОДу, в начале разрешал любой ООПшный язык, с...

Какие объекты доступны для сборщика мусора на момент вызова System.gc() и почему?
public class GCTest { static class A { private String myName; public A(String myName) { ...

сборщик мусора
Доброго времени суток. Подскажите пожалуйста каким образом сборщик мусора выбирает какие созданные...

Сборщик мусора
Соберет ли сборщик мусора поля объекта C, такие как "a" и "b", или же нужно самому в явной форме...

__________________
Помогаю в написании студенческих работ здесь.
Записывайтесь на профессиональные курсы Java-разработчиков
1
xoraxax
02.10.2016, 01:23     Симулятор сборщика мусора
  #2

Не по теме:

дичь какая-то

0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
02.10.2016, 01:23
Привет! Вот еще темы с ответами:

Вывод в файл мусора
Столкнулся с проблемой Объявлен массив вначале public static char abcd = { 'a', 'b', 'c', 'd' ,...

Сборщик мусора JAVA
Здравствуйте, хотел прояснить некоторые моменты при работе сборщика мусора на JAVA. Как я понял из...

Сборка мусора у наследника и родителя
Добрый день. Есть класс родитель и класс наследник: public abstract class AbstractActivity...

Сборщик мусора не удаляет локальную переменную
При старте программы выводится сообщение, о том что бы user подождал пока прога проверит наличие...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.