下面是一个简单的Java代码示例,会导致内存泄漏,可以用于测试内存模拟内存泄漏的场景:
public class MemoryLeak {
private static List<byte[]> buffer = new ArrayList<>();
public static void main(String[] args) {
while (true) {
buffer.add(new byte[1024 * 1024]); // 每次添加1MB的字节数组
}
}
}
在这个示例中,我们创建了一个静态的字节数组列表 buffer,并在一个无限循环中不断地向其中添加新的字节数组。由于这些字节数组被添加到静态集合中,因此它们将一直存在于内存中,直到程序终止。随着时间的推移,这些字节数组将占用越来越多的内存,最终导致内存泄漏。