2015秋招总结
面试、找工作以及实习的过程往往很心酸(心累),师弟妹们一定要做好心理准备----你们将会经历一段过渡期:从学生到半职业人的转变、从做学生作品到做企业产品的转变,谓之曰:蜕变期。这段时间你们心理会很动荡:你们也许会怀疑自己、会抱怨学校家庭、会退缩、会懊悔、会苦恼、会纠结、会伤心,也会欣喜若狂、会突然“打了鸡血”。然而正是这段时期,你会重新思考自己,重新认识这个职业,内心也逐渐强大,这非常可贵。痛苦与收获同在,等你们熬过去了,你们会被自己感动的。过程的痛苦是客观存在的,可是一定要记住:不忘初心,方得始终。
JavaScript之坑了我--闭包助力OOP之模拟私有成员属性
思维引导:(和java对比)? 由于函数体内声明的局部变量我们是无法访问的,这个特征类似java中的private 成员属性,所以我们可以将这些声明的局部变量看作private成员属性。Js中闭包的特性,让我们可以将function中的局部变量在函数体执行完毕后保留下来(即不让回收),如此一来就提供了思路给我们来模拟java的private成员。
JavaScript之坑了我--闭包原理不过如此
闭包的产生,就是为我们提供了操纵函数局部变量的方式!是不是很神奇?这在java中是我没有看见过的。分析:我们知道,计算机中的内存变量如果有被引用着的话,则系统是不会将之回收的。只要我们能够一直持有这个引用,则就可以令局部变量避免被回收——这是闭包概念成立的前提。
JavaScript之坑了我--instanceof的判断机制测试
原型链中的__proto__属性的作用非常大,是整个原型链串起来的根本,是整个原型继承体系的本质!!instanceof 就是根据原型链上的继承关系判断的。这个特点就和java的instanceOf相似了。我们来测试一下,instanceof的判断机制,
JavaScript之坑了我--一张图看尽原型及底层模拟
其实,在系统载入定义的(任何函数)function Person时,会同时执行:Person.prototype = new Object(); Person.prototype.constructor = Person; 两者的关系的建立是系统底层自动完成的。因此原型对象Person.prototype的所有初始属性都是从Object中继承而来,而Person类的实例对象的初始属性再继承自原型对象,即也是从Object中继承而来,此乃原型继承。是故,可以理解为:Object类是所有类的父类。
JavaScript之坑了我--JSON对象明析
JSON对象:(1) 三种常见的定义语法:Var p = {name : “luozhixiao”, age:33,say:function(x,y){alert(x+y+“”);}};Var p1 = {“name” : ”luozhixiao” , “age” : 33,”say”:function(x,y){alert(x+y+“”);}};Var p2 = {‘name’ : ”luozhixiao” , ’age’ : 33,’say’:function(x,y){alert(x+y+“”);}};属性名有没有引号都可以的!!!!!不过个人还是倾向于有引号!(1) 创建对象,我们往往有两种方式:构造器和使用JSON。这两者的区别如下:构造器创建:可以方便于公共属性的创建;?JSON创建:则可以省略构造器的定义。因此,当我们即将创建的一系列对象都需要某部分公共属性时,我们就应该通过构造器创建。否则使用JSON方式会便捷。
JavaScript之坑了我--面向对象预热
js面向对象:语言的发展:面向机器:同一个程序,一个机器就得写一次;面向过程:将程序的执行分解成多个步骤;面向对象:将程序的执行分解成多个事物;面向过程相对于面向对象的劣势: var name = “luozhixiao”; var age = 22;即使我们知道name,age是一个人的信息,我们发现,当人多的时候,我们无法通过name/age相应地获取到其对应的那个人的age/name。而面向对象的封装的思想却可以。function Person(){}var man_1 = new Person();man_1.name = “luozhixiao”man_1.age = 21;只要我们持有man_1,就可以获取name以及相应的同一个人的age。
JavaScript之坑了我--函数细节
1. 函数的声明三种:a. 普通直接方式:b. 变量初始化的方式:c. 原始方式:注意:c种方式能体现js中“函数也是对象,函数名是指针”。不过这种声明方式很损性能:第一次是ECMAScript代码,第二次是解析传入构造函数中的字符串;故少用。2. 由于函数也是对象,即变量,所以,我们可以将一个函数作为值进行传参。 js函数作为对象,要注意以下属性: 我们在浏览器console中 执行:? Object.getOwnPropertyNames( function(){….} );结果:? ["length", "name", "arguments", "caller", "prototype"]?解析: length: 函数的参数的个数name : 当前函数的名字:用在多个函数的循环中arguments : 一个类数组对象,包含着在函数运行过程中传入函数中的所有参数,其中一个属性cal
JavaScript之坑了我--定时器用法
原理: ?setTimeout(…)执行时,会向系统内存中抛出一个定时器对象,当指定时间到达时,定时器对象会执行加载的代码,然后自动消失。 var tempTimer = setTimeout(“alert(‘1’);”,3000);//获取定时器对象 定时器的清除:用于清除定时器对象 var tempTimer = setTimeout(“alert(‘1’);”,3000);//获取定时器对象 clearTimeout( tempTimer );
JavaScript之坑了我--BOM模型速知
我们开发中必须知道的几个BOM对象的属性
JavaScript之坑了我--事件模型细节
? 事件对象:事件发生时系统自动产生的对象,其内封装了此事件的所有信息。低版本IE:window.eventW3C :事件绑定时直接传参数 如:obj.onclick = function(event){};当事件触发时,浏览器会将事件信息封装到事件对象中,然后作为参数传递obj.onclick(event)并且执行之。 事件模型:指嵌套的多个元素都有绑定了同一种事件,当此事件发生时,事件发生的先后顺序是从最外层向最里层,还是从最里层到最外层。 html部分元素的默认行为及如何控制: 链接:点击后跳转 提交按钮:点击后提交
JavaScript之坑了我--事件绑定原理
javaScript事件绑定原理我的点滴积累和理解,哈哈!望指正!html元素事件绑定共两种方式:(1)行内式:(2)动态绑定:(目前做项目最流行的方式:元素、样式、事件分离,解耦!!!)(3)添加事件监听:当同一个html元素的同一个事件需要添加多个函数时使用。
JavaScript之坑我--数组原理探析
天翼商城后台大迁移,我在前端吃了无数亏,遂发奋恶补前端js中的数组声明时不需要指定数据类型,不强制指定长度,可以同时存储各种数据类型的数据。这在java中任何一个都是不可想象的。
java编译器的一些感悟
为了准备面试最近复习和深入学习了向上/下转型,泛型,可变参数,发现,我们很多时候,这些语法特性都是在编译器层面的:编译器会背地里将我们的诸如此类的语法转化成为符合解释器的格式,所以等到达解析器执行时已经是常规格式的机器码。例如,泛型的话编译器会通过擦除(erasure)的前端处理,固定上、下限等操作令我们写的源码变回我们的常规代码;可变参数的话,编译器背地里就自动将匹配好的参数装到一个数组中,于是又变回了我们的常规代码。在编码中,正式由于编译器的这些“背地里”的行为,我们可以发明很多很好的设计模式,例如向上转型在工厂模式,动态代理等中起到的核心作用。
tomcat热部署的实现原理
tomcat热部署的实现原理
Runtime.getRuntime.exec操纵其他程序
Runtime.getRuntime.exec操纵其他程序
java内部类的理解
内部类不是很好理解,但说白了其实也就是一个类中还包含着另外一个类如同一个人是由大脑、肢体、器官等身体结果组成,而内部类相当于其中的某个器官之一,例如心脏:它也有自己的属性和行为(血液、跳动)显然,此处不能单方面用属性或者方法表示一个心脏,而需要一个类而心脏又在人体当中,正如同是内部类在外部内当中
java复杂奇葩的嵌套类和接口
在Java语言中,接口可以嵌套在类或其它接口中。由于Java中interface内是不可以嵌套class的,所以接口的嵌套就共有两种方式:class嵌套interface、interface嵌套interface。
彻底搞定Java关键字final、static
彻底搞定Java关键字final、static!!
dtd文件入门
DTD为英文Document Type Definition,中文意思为“文档类定义”。DTD肩负着两重任务:一方面它帮助你编写合法的代码,另一方面它让浏览器正确地显示器代码。也许你会问它们居然有这样的能力?