我想知道是否有人可以解释以下代码的工作原理:
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 实例存储在内存中的什么位置?它不能在堆栈上.. 那么在哪里?在这种情况下如何处理引用和原语有区别吗?
非常感谢,蒂姆 P。