const引用的作用: 1. 避免不必要的复制.  2. 限制不能修改对象. const 引用的是对象时只能访问该对象的const 函数  例: class A { public: void constFunc() const; void nonConstFunc(); }; A a ; const A& ref=a;//A& const ref = a;则没有问题,我也不清楚为什么 ref.constFunc();//正确 ref.nonConstFunc();//错误,该函数中可能会修…
调用名为$.isPlainObject的工具函数,能检测对象是否为通过{}或new Object()关键字创建的原始对象,如果是,返回true,否则,返回false值,调用格式为: $.isPlainObject (obj); 其中,参数obj表示需要检测的对象名称. <body> <div id="divtest"> <div class="title"> <span class="fl">检测对…
对象的扩展 属性的简洁表示法 ES6 允许直接写入变量和函数,作为对象的属性和方法.这样的书写更加简洁. const foo = 'bar'; const baz = {foo}; baz // {foo: "bar"} // 等同于 const baz = {foo: foo}; 上面代码表明,ES6 允许在对象之中,直接写变量.这时,属性名为变量名, 属性值为变量的值.下面是另一个例子. function f(x, y) { return {x, y}; } // 等同于 func…
一.JAVA假克隆 Java中,对于基本类型,可以用"="进行克隆,而对于引用类型却不能简单的使用"="进行克隆,这与JAVA的内存使用空间有关,JAVA在栈中保存基本类型和引用变量,在堆中保存对象.对于引用变量而言,使用"="将修改引用,而不是复制堆中的对象,此时两个引用对象将指向同一个对象,因此如果对一个变量修改则会修改另一个对象. public class Employee { private String name; private in…
这几天抽空学习了es6语法,关于字符串,数值,数组,函数以及对象的扩展,看到es6标准入门这本书,里面讲的扩展特别多,我认为有几部分在项目上用不到,就挑有用的当笔记学习了. 字符串的扩展 str.includes(str1, n) 返回布尔值,表示是否找到了参数字符串 params: 第一个参数str1 必选, 要匹配的字符   第二个参数n 可选 表示开始搜索的索引位置 第n个开始搜索到结束 let str = 'hello world' let str1 = 'hello' console.…
现在AOP的场景越来越多,所以我们有必要理解下和AOP相关的一些概念和机制. import org.aspectj.lang.reflect.SourceLocation; public interface JoinPoint { String toString(); //连接点所在位置的相关信息 String toShortString(); //连接点所在位置的简短相关信息 String toLongString(); //连接点所在位置的全部相关信息 Object getThis(); /…
翻译的初衷以及为什么选择<Entity Framework 6 Recipes>来学习,请看本系列开篇 8-6  获取原始对象 问题 你正在使用POCO,想从数据库获取原始对象. 解决方案 假设你有如图8-7所示的模型.你正在离线环境下工作,你想应用在获取客户端修改之前,使用Where从句和FirstDefault()方法从数据库中获取原始对象. 图8-7.包含一个单独实体Item的模型 按代码清单8-9的方式,在获取实体之后,使用新值更新实体并将其保存到数据库中. 代码清单8-9. 获取最新…
(关于promise,以前并不知道是什么,没这个概念.现在来学习总结下) promise含义 es6的异步编程解决方案.需要new新对象操作api. promise对象特点 有3中状态:pending(进行中).fulfilled(已完成).rejected(已失效),异步操作才有的状态. 2种状态的改变结果,称为:已定型(resolve): 即可将异步操作变为同步操作,避免层层嵌套回调函数. promise缺点: 对象创建后会立即执行,中途不可中断. 不设置回调时,将抛出异常,不影响外部执行.…
1. 简介 本篇文章,我们来一起了解一下 Spring 是如何将配置文件中的属性值填充到 bean 对象中的.我在前面几篇文章中介绍过 Spring 创建 bean 的流程,即 Spring 先通过反射创建一个原始的 bean 对象,然后再向这个原始的 bean 对象中填充属性.对于填充属性这个过程,简单点来说,JavaBean 的每个属性通常都有 getter/setter 方法,我们可以直接调用 setter 方法将属性值设置进去.当然,这样做还是太简单了,填充属性的过程中还有许多事情要做.…
数组和类数组对象定义 数组:[] 类数组对象:只包含使用从零开始,且自然递增的整数做键名,并且定义了length表示元素个数的对象,我们就认为他是类数组对象. 数组使用 let foo_arr = [1,2,3] let foo = (a,b,c)=>(console.log(a,b,c)) // 类数组对象以及数组 console.log(foo(...foo_arr)) 类数组使用 // 类数组对象 let obj = { 0: 'a', 1: 'b', 2: 'c', length: 3…