策略模式的应用场景 最近公司项目,我搭建了一个缓存服务器的项目,功能模块构建到最后有一个问题纠结了我很久。首先我先介绍一下我自己的这个缓存工程的功能的一个实现思路。我们项目的架构是从一台Oracle服务器中获取需要缓存的数据(经常查询的),然后放入redis缓存服务器中。 实现过程: 1.从orac ...
分类:
其他好文 时间:
2017-07-01 17:18:03
阅读次数:
194
1 >>> x = [1,2,3] 2 >>> id(x) #查看对象内存地址 3 1558308056520 4 >>> x.append(4) #在尾部追加元素 5 >>> x 6 [1, 2, 3, 4] 7 >>> x.insert(0,0) #在指定位置插入元素 8 >>> x 9 [0,... ...
分类:
移动开发 时间:
2017-07-01 09:54:16
阅读次数:
192
答案是肯定的,但不能拿这一句回答面试官的问题。分析:JAVA是支持垃圾回收机制的,在这样的一个背景下,内存泄露又被称为“无意识的对象保持”。如果一个对象引用被无意识地保留下来,那么垃圾回收器不仅不会处理这个对象,而且也不处理被这个对象引用的其它对象。“内存泄露”就是内存中某些内存不可被回收。 举个例 ...
分类:
编程语言 时间:
2017-06-29 10:09:28
阅读次数:
202
内存作为系统中重要的资源,对于系统稳定运行和高效运行起到了关键的作用,Java和C之类的语言不同,不需要开发人员来分配内存和回收内存,而是由JVM来管理对象内存的分配以及对象内存的回收(又称为垃圾回收、GC),这对于开发人员来说确实大大降低了编写程序的难度,但带来的一个副作用就是,当系统运行过程中出 ...
分类:
其他好文 时间:
2017-06-29 10:03:08
阅读次数:
149
总结:1、按1继承顺序先排布基于每个父类结构。2、该结构包括:基于该父类的虚表、该父类的虚基类表、父类的父类的成员变量、父类的成员变量。3、多重继承且连续继承时,虚函数表按继承顺序排布函数与虚函数。4、而后排布子类的成员变量。5、排布虚基类的虚函数表。6、虚基类的成员变量 #类中的元素 0. 成员变 ...
分类:
编程语言 时间:
2017-06-17 18:39:33
阅读次数:
172
场景:1. C++的对象差别于C的原因是他们能够有继承关系, 方法有重载, 覆盖关系等, 他们的对象内存数据结构因此也比較复杂.2. 非常多情况下我们须要一个父类来存储子类的指针对象进行通用方法的操作。涉及到详细某个子类对象特定操作时又须要强制转换为子类。那么这时候该用什么好呢?答: 假设不须要类型 ...
分类:
编程语言 时间:
2017-06-17 15:59:08
阅读次数:
185
内存结构栈堆方法区 栈 在方法中声明的局部变量保存在栈中,方法执行结束后栈中数据会被回收 堆 堆中保存的是对象的信息,使用new关键字创建的对象信息。堆中信息会被java的垃圾回收器回收。 方法区 方法区保存的是类的信息和静态变量 static关键字使用static修饰变量使用static修饰方法使 ...
分类:
其他好文 时间:
2017-06-09 20:26:17
阅读次数:
175
对象内存模型 一. 栈(Stack) VS. 堆(heap) 栈 由系统自动管理,以执行函数为单位 空间大小编译时确定(参数+局部变量) 函数执行时,系统自动分配一个stack 函数执行结束时,系统立即自动回收stack 堆 在c++中由程序员手动控制 手动分配new和malloc 手动释放dele ...
分类:
编程语言 时间:
2017-06-01 22:43:38
阅读次数:
282
set集合容器使用一种称为红黑树(Red-Black Tree) 的平衡二叉检索树的数据结构,来组织泛化的元素数据。每一个节点包括一个取值红色或黑色的颜色域。以利于进行树的平衡处理。作为节点键值的元素的插入,必须确保每一个子树根节点的键值大于左子树全部节点的键值,而小于右子树全部节点的键值。不会将反 ...
分类:
其他好文 时间:
2017-06-01 19:35:19
阅读次数:
179
1.内存管理 1)对象内存管理 编译好的Java程序需要运行在JVM中 程序,无论代码还是数据都需要存储在内存中,JVM为Java程序提供并管理所需要的内存空间 JVM内存分为“栈”、“堆”和“方法区”三个区域,分别用于存储不同数据 2)堆 JVM在其内存空间开启一个成为“堆”的存储空间,这部分空间 ...
分类:
编程语言 时间:
2017-05-30 21:51:39
阅读次数:
141