17.对象引用和拷贝 我们先来看看以下向个概念 变量:是系统变量名表中的元素,通常是由程序员进行定义声明 对象:是计算机分配的一块内存,需要足够的空间去表示它的值 引用:是自动形成的从变量到对象的指针 可变对象:允许对自身内容进行修改。如list、dict、set、自定义类型等。 不可变对象:不允许 ...
分类:
编程语言 时间:
2020-06-02 00:15:43
阅读次数:
102
Short notes for STL containers ...
分类:
其他好文 时间:
2020-06-01 23:52:07
阅读次数:
72
整体架构 强引用 强引用是默认支持,当内存不足的时候,JVM开始垃圾回收,对于强引用的对象,就算是出现了OOM也不会回收对象。 强引用是最常见的普通对象引用,只要还有强引用指向对象,对象就存活,垃圾回收器不会处理存活对象。一般把一个对象赋给一个引用变量,这个引用变量就是强引用。当一个对象被强引用变量 ...
分类:
其他好文 时间:
2020-06-01 14:06:08
阅读次数:
70
各种程序设计语言中方法传递方式有如下几种: 按值调用 call by value 按引用调用 call by reference 按名称调用 call by name Java 中是按值调用。方法参数一般有两种类型: 基本数据类型(数字、布尔值) 对象引用 基本数据类型是按值调用这个很好理解,例如下 ...
分类:
编程语言 时间:
2020-05-31 13:12:31
阅读次数:
82
JS内置对象 Window对象document、history、location、navigator、screen 返回相应对象的引用parent、self、top 分别返回父窗口、当前窗口和最顶层窗口的对象引用screenLeft、screenTop、screenX、screenY 返回窗口的左上 ...
分类:
Web程序 时间:
2020-05-28 16:43:07
阅读次数:
77
局部变量表 又称:局部变量数组、本地变量表 定义一个数字数组,主要用于存储方法参数和定义在方法体内的局部变量:基本数据类型、对象引用、以及returnAddress类型 局部变量表建立在线程的栈上,私有数据,不存在数据安全问题 局部变量表所需的容量大小是在编译器确定下来的,并保存在方法的Code属性 ...
分类:
其他好文 时间:
2020-05-26 12:37:26
阅读次数:
85
1 Java序列化和反序列化简介 Java序列化是指把对象转换为字节序列的过程,而Java反序列化是指把字节序列恢复为java对象的过程。 我们把对象序列化成有序字节流,保存到本地磁盘或者Redis等媒介中,或者直接通过网络传输进行远程方法调用(RMI)来使用,在使用的时候再进行反序列化来得到该对象 ...
分类:
其他好文 时间:
2020-05-26 12:31:52
阅读次数:
51
实现浅拷贝与深拷贝 包含基本数据类型与引用数据类型两种不同的数据类型的值,深拷贝与浅拷贝的概念只存在于引用数据类型。对于引用类型,浅拷贝是拷贝了指向这个对象堆内存的指针,是拷贝了对原对象引用,深拷贝是拷贝了该对象的所有属性到一个新的对象,若是原对象的某属性依然引用了其他对象,那么需要将原对象引用的其 ...
分类:
其他好文 时间:
2020-05-24 21:24:15
阅读次数:
54
答:是值传递。Java语言的方法调用只支持参数的值传递。当一个对象实例作为一个参数被传递到方法中时,参数的值就是对该对象的引用。对象的属性可以在被调用过程中被改变,但对对象引用的改变是不会影响到调用者的。C++和C#中可以通过传引用或传输出参数来改变传入的参数的值。在C#中可以编写如下所示的代码,但 ...
分类:
其他好文 时间:
2020-05-15 09:38:21
阅读次数:
77
写在前面 这是上一篇博客的续,这几天略闲,又往后看了几页。做一下总结。 "这里" 是上一篇博客 代码规范篇 OOP规约 1. 【强制】 避免通过一个类的对象引用访问此类的静态变量或静态方法,直接通过类名访问即可。 2. 【强制】 所有的覆写方法,必须加@Override注解 3. 【强制】 相同参数 ...
分类:
编程语言 时间:
2020-05-14 20:59:14
阅读次数:
88