GC回收算法 1.标记清除算法分为标记阶段和清除阶段标记阶段:通过特定的判断方式找出无用的对象实例并将其标记清除阶段:将已标记的对象所占用的内存回收缺点:运行多次以后容易产生空间碎片,当需要一整段连续内存时虽然空间足够但是无法分配,会多次触发GC操作。 2.复制算法为了提高标记清除算法的效率,减少内 ...
分类:
编程语言 时间:
2019-12-20 11:42:45
阅读次数:
67
s6新增了一种定义对象实例的方法,Class(类)这个概念,作为对象的模板。class可以看作只是一个语法糖,通过class关键字,可以定义类。让对象原型的写法更加清晰、更像面向对象编程的语法。 一. Class的基本用法 1. constructor方法 1 //定义类 2 class Point ...
分类:
其他好文 时间:
2019-12-18 23:49:56
阅读次数:
113
1、内存模型 1.1、堆 1. 堆是所有线程共享的,主要存放对象实例和数组。 2. 新生代和老年代的比例是1:2。 3. 新生代中三个区域的比例是 8 : 1 : 1。 1.1.1、新生代 对象分配在eden区中,当eden区满时会触发minor gc,将eden区中存活的对象,复制到survivo ...
分类:
编程语言 时间:
2019-12-18 23:36:48
阅读次数:
95
直接赋值:其实就是对象的引用(别名)。 浅拷贝(copy):拷贝父对象,不会拷贝对象的内部的子对象。 深拷贝(deepcopy): copy 模块的 deepcopy 方法,完全拷贝了父对象及其子对象。 实例解析 a = {1: [1,2,3]} 1. b = a: 赋值引用,a 和 b 都指向同一 ...
分类:
编程语言 时间:
2019-12-17 10:36:31
阅读次数:
73
package com.sise.case1;//单例模式 1.私有的静态的实例对象 private static instance//// 2.私有的构造函数(保证在该类外部,无法通过new的方式来创建对象实例) private Singleton(){}//// 3.公有的、静态的、访问该实例对 ...
分类:
其他好文 时间:
2019-12-15 10:31:09
阅读次数:
106
__new__ : 控制对象的实例化过程 , 在__init__方法之前调用 __init__ : 对象实例化对象进行属性设置 class User: def __new__(cls, *args, **kwargs): """控制对象的创建的过程,在__init__方法之前调用""" print( ...
分类:
其他好文 时间:
2019-12-15 00:57:04
阅读次数:
85
jdk8新特性 Lambda 表达式 Lambda允许把函数作为一个方法的参数(函数作为参数传递进方法中。方法引用 ? 方法引用提供了非常有用的语法,可以直接引用已有Java类或对象(实例)的方法或构造器。与lambda联合使用,方法引用可以使语言的构造更紧凑简洁,减少冗余代码。 默认方法 默认方法 ...
分类:
其他好文 时间:
2019-12-10 12:58:19
阅读次数:
115
Scanner类: Scanner类 Scanner类是引用数据类型的一种,我们可以使用该类来完成用户键盘录入,获取到录入的数据。 Scanner使用步骤: 导包:import java.util.Scanner; 创建对象实例:Scanner sc = new Scanner(System.in) ...
分类:
其他好文 时间:
2019-12-09 13:52:56
阅读次数:
78
空对象模式: 在空对象模式(Null Object Pattern)中,一个空对象取代 NULL 对象实例的检查。Null 对象不是检查空值,而是反应一个不做任何动作的关系。这样的 Null 对象也可以在数据不可用的时候提供默认的行为。在空对象模式中,我们创建一个指定各种要执行的操作的抽象类和扩展该 ...
分类:
其他好文 时间:
2019-12-08 21:27:04
阅读次数:
119
单例设计模式,就是保证对象的实例只有一个,防止每个用这个对象的人都创建一个实例。 私有化构造方法 提供对象返回方法,用static修饰 对象创建语句要是在外面,需要用 static final限定词 1、饿汉:类加载时就先把对象实例准备好。 public class SingleTon { priv ...
分类:
其他好文 时间:
2019-12-07 11:01:52
阅读次数:
115