基础复习
Posted qcq0703
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了基础复习相关的知识,希望对你有一定的参考价值。
垃圾回收:
垃圾回收分为年轻代,年老代,持久代。
新创建的对象属于年轻代,有A、B区,A区满了,就会调用垃圾回收机制,通过引用计数法或者引用可达法就行筛选,没有的进行回收,有用的进行复制,复制到B区。
B区满了,再重复以上操作。
循环15次之后,就会属于年老代,进入年老区,C区,当C区达到一定比例之后,也会进行一次垃圾回收,跟年轻区的垃圾回收有些差别,具体差别还不太清楚。
当年老区满了,则进行全盘清理,Full Gc。
能够触发执行全盘清理的四个条件:
年老区满了。
持久区满了。
调用System.gc()显性方法
上次全盘清理之后....(这个不太懂)
容易造成内存泄漏的操作:
创建大量无用对象。eg:对于一个需要很多次拼接的字符串,使用String,而不是StringBuilder
创建大量静态集合类
不关闭连接。eg:数据库连接、IO流
监听器的使用。
传递参数其实就是值传递,值得是将值进行复制,而不是将原值给它。但是需要注意引用对象的传递,当将一个引用对象给定另外一个值时,就相当于将该对象的地址给了另外一个值,所以两个值只要有一
个改变对象,那么对象就会被改变。
创建对象的步骤
先分配内存空间,并完成成员变量的初始化或者默认值。
执行属性值的显示初始化(系统默认的无参构造器就是隐式的,不是系统默认的就是显示的)
执行构造方法
返回对象的地址给对象
以上是关于基础复习的主要内容,如果未能解决你的问题,请参考以下文章