集合体系 一.数据结构 <1>堆栈结构 特点:先进后出 <2>队列结构 特点:先进先出 <3>数组结构 特点:查询快,增删慢 <4>链表结构 特点:增删快,查询慢 二.List接口 Java.util.List 接口(集合)extends Collection 接口 List接口的特点: 允许存储重 ...
分类:
编程语言 时间:
2017-12-17 13:15:56
阅读次数:
166
局部对象 当对象所在作用域结束之后,销毁栈空间,此时析构函数被调用。 举例: 函数返回时自动调用析构函数: 堆对象 调用析构代理函数来处理析构函数: 为什么使用析构代理函数来调用析构函数?考虑到如果delete的对象是一个对象数组,可以使用析构代理函数依次析构所有的对象。举例: 调用了构造代理函数: ...
分类:
编程语言 时间:
2017-12-17 12:25:53
阅读次数:
208
假设一个场景:收到网络协议的时候自动调用对应回调函数,回调函数的对象是协议参数。当我们处理不同的协议的时候需要不同的参数,那么我们只能让具体的参数继承自一个基类A。 这样一来我们就只能这样写回调函数 这样一来回调函数的内部一般第一句话就是强转类型(或者用dynamic_cast也可以),与逻辑无关。 ...
分类:
其他好文 时间:
2017-12-16 11:12:53
阅读次数:
148
子类不能继承父类的构造器(构造方法或者构造函数),但是父类的构造器带有参数的,则必须在子类的构造器中显式地通过super关键字调用父类的构造器并配以适当的参数列表。 如果父类有无参构造器,则在子类的构造器中用super调用父类构造器不是必须的,如果没有使用super关键字,系统会自动调用父类的无参构 ...
分类:
其他好文 时间:
2017-12-13 23:51:09
阅读次数:
156
对象生成时会自动调用构造函数。只要找到了定义对象的地方,就找到了构造函数调用的时机。不同作用域的对象的生命周期不同,如局部对象、全局对象、静态对象等的生命周期各不相同,只要知道了对象的声明周期,便可以推断出构造函数的调用时机。 局部对象 反汇编: 获取对象首地址并调用构造函数: 对象的地址为: 进入 ...
分类:
编程语言 时间:
2017-12-13 11:29:34
阅读次数:
170
随着计算机革命的发展,“不安全”的编程方式已逐渐成为编程代价高昂的主因之一。 初始化和清理正是涉及安全的两个问题。C++引入了构造器的概念,在创建对象时被自动调用的特殊方法。Java也采用了构造器,并额外提供了“垃圾回收器”。对于不再使用的内存资源,垃圾回收器能自动将其释放。 1、用构造器确保初始化 ...
分类:
编程语言 时间:
2017-12-11 18:50:25
阅读次数:
143
WebSocket 教程 概述 WebSocket 是什么? WebSocket 是一种网络通信协议。RFC6455 定义了它的通信标准。 WebSocket 是 HTML5 开始提供的一种在单个 TCP 连接上进行全双工通讯的协议。 为什么需要 WebSocket ? 了解计算机网络协议的人,应该 ...
分类:
Web程序 时间:
2017-12-07 19:13:17
阅读次数:
333
建议52:及时释放资源 垃圾回收机制自动为我们隐式地回收了资源(垃圾回收器会自动调用终结器),那我们为什么要主动释放资源呢? 这是一个WinForm窗体程序的例子,在这个示例中,单击一个按钮负责打开一个文件,单击另一个按钮负责回收说有“代”(代的概念会在下文详细指出)的垃圾。如果连续两次单击打开文件 ...
我们常听说vue是用getter与setter实现数据监控的,那么getter与setter到底是什么东西,它与defineProperty是什么关系,平时有哪些用处呢?本文将为大家一一道来。 对象的属性 按照一贯的“由浅到深”行文原则,我们先温习一下对象的属性。我们知道对象有自身的属性以及原型上的 ...
分类:
其他好文 时间:
2017-12-05 21:22:27
阅读次数:
137
1. __construct: 内置构造函数,在对象被创建时自动调用。见如下代码: 运行结果如下: 2. parent: 用于在子类中直接调用父类中的方法,功能等同于Java中的super。 运行结果如下: 3. self: 在类内调用该类静态成员和静态方法的前缀修饰,对于非静态成员变量和函数则使用 ...
分类:
其他好文 时间:
2017-12-02 14:05:54
阅读次数:
190