最终参数存储在匿名类实例中的什么位置?
2022-09-04 21:37:09
我有以下静态工厂方法,用于从 int 数组创建列表视图:
public static List<Integer> newInstance(final int[] numbers) {
return new AbstractList<Integer>() {
@Override
public Integer get(int index) {
return numbers[index];
}
@Override
public int size() {
return numbers.length;
}
};
}
public static void main(String[] args) {
int[] sequence = {10, 20, 30};
List<Integer> list = ListFactory.newInstance(sequence);
System.out.println("List is "+list);
}
在“有效的Java”中,Joshua Bloch提到了这一点。
作为适配器,允许将 int 数组视为整数实例的列表。
但是,我记得适配器使用组合,匿名列表实现的实例应使用int[]作为成员字段。
如果 int[] 输入参数不是匿名列表实现的成员字段,则它究竟存储在哪里?
如果有人可以提供一些见解或一些链接来寻找更多信息,我将不胜感激。