简介:封装是面向对象的三个基本特征之一,将现实世界的事物抽象成计算机领域中的对象,这种对象同时具有相同属性和行为(方法),这种抽象就是封装.
重要特性: 数据隐藏. 对象只对外提供与其它对象交互的必要接口,而将自身的某些属性和实现细节对外隐藏,通过这种方式,对象对内部数据提供了不同级别的保护,以防止程序中无关的部分意外的改变或错误的使用了对象的私有部分。这样就在确保正常交互的前提下,保证了安全性,不需要关心对象实现的方法即可使用这个对象。这个概念就是“不要告诉我你是怎么做的,只要做就可以了。”
函数(function)--就是一种最简单的封装
未封装的代码:
var body = document.getElementsByTagName("body")[0];
var h1 = document.createElement("h1");
body.style.backgroundColor = "green";
h1.innerText = "绿了";
body.appendChild(h1);
封装代码
function makeGreen() {
var body = document.getElementsByTagName("body")[0];
var h1 = document.createElement("h1");
body.style.backgroundColor = "green";
h1.innerText = "绿了";
body.appendChild(h1);
}
放在一起很直观的就可以看到两者的区别,封装代码比未封装的代码就多了
function makeGreen(){
未封装的代码
}。