Мне было интересно, может кто-нибудь объяснить, как работает следующий код:
public interface Result {
public int getCount();
public List<Thing> getThings();
}
class SomeClass {
...
public Result getThingResult() {
final List<Thing> things = .. populated from something.
final int count = 5;
return new Result {
@Override
public int getCount() {
return count;
}
@Override
public List<Thing> getThings();
return things;
}
}
}
...
}
Где в памяти хранятся примитив int, ссылка List и экземпляр List?Это не может быть в стеке .. так где?Есть ли разница между обработкой ссылок и примитивов в этой ситуации?
Спасибо большое, Тим П.