学习笔记_2012_4_13垃圾回收原理与String类的学习

           学习了有一段时间了,最近满脑子的东西有些消化不良。代码写的比以前少很多了,从基础学习一定要好好的打牢。学习笔记是我自己给自己复习用的,这当中的描述不一定准确和官方的定义也会有差别,或会有不对的地方请大家指正。

 

 

 

垃圾回收原理:

1.       每创建一个新的对象默认处于0

2.       不断创建对象,第0代所满足的最大空间就会满

3.       系统会默认的调用GC.Collecttor(0)

3.1    检查所有类型是否处于引用状态。

3.2    将垃圾与需要的数据分别作上标记

3.3    将有用的东西移动到一个地方

3.4    垃圾资源放在原来的位置不动

3.5    装所有的资源标记为第一代

4.       系统反复执行123过程,当第一代满的时候又回收第一代

5.       回收后第一代向第二代进军,如果第二代也满了就会报异常。

值得注意的是,如果是大数据内库,实际中是不会被移动的。

String类的学习:

1.       string的不变性,构造方法。

2.       常用属性:Length    Empth

3.       string类型其实就是char数组构成的

4.       字符串的索引,将字符串当做字符数组操作,但值得注意的是无法通过 string[0]=‘A’赋值,会报错无法赋值,因为是只读的。但是可以通过声明char数组来操作,再把处理后的结果赋值给字符串。

5.       由于字符串是不可变的,所以内容相同的字符串会是同一个地址,这就是字符串的“拘留池”,但new的时候不管是否有相同值的字符串都会新建一个。

6.       string.Replace(需替换的字符串,用作替换的字符)方法,如需删除字符串中的某个字符可以用替换成空来实现。

7.       string.Endswith()方法判断是否以某个字符串结尾。

8.       string.Format({0},“替换占位符”)console.writeline()方法类似,只是不打印输出

9.       string.Split()方法分割字符串。

posted @ 2012-04-13 18:49  前方辉煌  阅读(165)  评论(0编辑  收藏  举报