暂无权限

加入尚新途,才有权限看这些视频哦!

点击前往
×
问答
葳蕤自生光
1楼

视频里面for到底是创建了一万个什么样的对象呀,是创建了一万个类似这样 的对象吗:第一个对象是"0"第二个对象是"01",第三个对象是"012",以此类推,直到"012....9999"。如果是这样的话为啥不能后一个对象直接把前一个给覆盖掉,这样不是更好吗

String str="";
for(int i=0;i<10000;i++){
str+=i;
}




尚新途

因为是String类型的,String类型是不会被覆盖掉的,你有几个,就都会放在常量池里,所以在循环里创建Sring对象是很占用内存的,这个一定要注意

Double
2楼

  1. 垃圾回收过程一般分为两步,是哪两步?

  2. 发现垃圾-->回收垃圾

  3. 垃圾回收常见的两种算法是什么?

  4. 引用技术法、引用可达法


  5. 堆内存划分成:年轻代、年老代、永久代。垃圾回收器划分成:Minor GC、Major GC、Full GC。这三种垃圾收回器都对应哪些区域?

  6. Minor GC:年轻代 Eden区

  7. Major GC: 年老代 Survivor区

  8. Full GC: 全部回收



  9. 对JVM调优的过程中,很大一部分工作就是对于Full GC的调节。这句话对吗?

  10. System.gc()的作用是什么?

  11. 仅仅为通知JVM调用Full GC


尚新途

对JVM调优的过程中,很大一部分工作就是对于Full GC的调节。这句话对吗?对,JVM调优是属于更为个性化的底层调优,oracle官方已经定义好的 jvm 默认参数,已经足够满足很多需求。


执行System.gc()函数的作用只是提醒或告诉虚拟机,希望进行一次垃圾回收

误念
3楼

方法区中存储的内容不是存活最久的吗?比如:类信息,只要程序开着就一直在,程序关闭后就没了,除了内存满了之后,启动Full GC清理一下,我就想问方法区中存储的信息什么时候结束?

尚新途

后面会讲GC垃圾处理机制,到时候理解一下~

自我检测(5S)