弱引用的对象为什么不会被GC回收?

图片说明

弱引用是存活到下一次垃圾回收发生之前,但是 你这样的main 函数,申请的内存空间不足以触发垃圾回收。多申请一些内存,或者配置一下JVM参数,-Xms:10M,-XX:+PrintGCDetails这种
申请内存可以像下面一样

   int _1MB = 1024 * 1024;
   byte[] allocation1, allocation2, allocation3, allocation4;
   allocation1 = new byte[2 * _1MB];
   allocation2 = new byte[2 * _1MB];