关于对象与引用之间的一些基本概念。 初学Java时,在很长一段时间里,总觉得基本概念很模糊。后来才知道,在许多Java书中,把对象和对象的引用混为一谈。可是,如果我分不清对象与对象引用, 那实在没法很好地理解下面的面向对象技术。把自己的一点认识写下来,或许能让初学Java的朋友们少走一点弯路。 为便 ...
分类:
编程语言 时间:
2018-09-04 16:58:01
阅读次数:
174
1、String、StringBuffer与StringBuilder之间区别 首先说运行速度,或者说是执行速度,在这方面运行速度快慢为:StringBuilder > StringBuffer > String String最慢的原因: String为字符串常量,而StringBuilder和St ...
垃圾回收 如果不进行垃圾回收,内存迟早都会被消耗空,因为我们在不断的分配内存空间而不进行回收。除非内存无限大,我们可以任性的分配而不回收,但是事实并非如此。 垃圾回收其实做了两件事:1、发现无用的对象;2、回收无用对象占用的内存空间。 垃圾回收算法 1、应用计数法 对象中添加一个引用计数器,每当一个 ...
分类:
编程语言 时间:
2018-08-14 21:11:26
阅读次数:
157
从运行速度和线程安全两方面进行比较 1. 运行速度 StringBuilder StringBuffer String String最慢的原因: String为字符串常量,而StringBuilder和StringBuffer均为字符串变量,即String对象一旦创建之后该对象是不可更改的,但后两者 ...
分类:
其他好文 时间:
2018-08-03 21:43:16
阅读次数:
196
js维护了一张对象引用表: 当一个对象被创建以后,栈内就有一个a,a这个对象就指向了对这个地址,当a=new Person()执行后,引用次数加1。当a=null置空,引用次数减1。由系统来维护对象引用表。 当引用次数为0时,这个地址这块空间就被认为是一个垃圾了。我们的垃圾回收机制就会将其回收。当然 ...
分类:
编程语言 时间:
2018-07-30 12:09:44
阅读次数:
157
垃圾回收过程 1.发现无用的对象 2.回收无用对象占用的内存空间 垃圾回收相关算法 1.引用计数法 2.引用可达法 ...
分类:
其他好文 时间:
2018-07-13 17:37:08
阅读次数:
180
在SGI STL版本的内存管理中,使用这样一种方式来分配内存: 内存分配+对象初始化 。首先是分配内存,其次是根据对象的类型(是否为POD【Plain of Data】)来使用最有效的方式来初始化对象。回收内存也是用同样的方式: 析构对象+回收内存 ,根据对象是否为POD类型,确定最有效的析构方式。 ...
分类:
其他好文 时间:
2018-06-16 20:05:05
阅读次数:
203
Redis对象类型 Redis基于基础的数据结构创建的对象: 字符串对象、 列表对象、 哈希对象、 集合对象 有序集合对象。 对象回收:Redis对象系统实现了基于引用计数技术的内存回收机制,当程序不再使用某个对象的时候,这个对象所占用的内存就会被自动释放;Redis通过引用计数技术实现了对象共享机 ...
分类:
其他好文 时间:
2018-06-07 19:33:31
阅读次数:
156
java区别去C、C++最大的特点就是垃圾回收 垃圾回收主要要点: 1、回收算法(回收哪些对象) 2、回收器(怎么回收) 查找垃圾对象 1、引用计数 每个对象都包含一个引用计数器,表示该对象被引用的次数,如果为0,则表示为游离对象,可以被回收; 不能解决环形引用。 2、根搜索 根据一批根对象搜索引用 ...
分类:
其他好文 时间:
2018-06-05 13:30:17
阅读次数:
141
get方法:取属性变量的值(一般以get开头后面是实例变量的名字) set方法:修改属性变量的值(一般以set开头后面是实例变量的名字) this关键字: 如果方法内的局部变量名与实例变量名相同,则方法体内给实例变量赋值时需要this关键字; this.s=s; this之后的s为本对象的实例变量; ...
分类:
其他好文 时间:
2018-05-31 00:40:47
阅读次数:
131