import java.util.ArrayList; public class MemoryTest { public static void main(String[] args) { var processors = new ArrayList(); for (int i = 0; i < 1000; i++) { int[] data = new int[10_000_000]; processors.add(new Processor(data) { @Override int calculate() { return length; } }); } System.out.println(processors.stream().mapToLong(Processor::calculate).sum()); } } abstract class Processor { int length; Processor(int[] data) { length = data.length; } abstract int calculate(); }