[TOC]
## 什么是面對對象
```
是一種思想,java就是一種面對對象的語言,JavaScript是面向過程的。
把數據及把數據的操作方法放在一起,作為一個整體,用戶只需要操作這個整體,就是面對對象
```
## 面對對象的三大特征
### 封裝,繼承,多態
> 封裝:封裝就是隱藏對象屬性,實現方法,及對外開放接口,用戶通過接口操作對象,
> 封裝的目的是:簡化編程,增強安全性,使用者不用了解實現過程,只需操作結果即可
> 繼承 :就是子類擁有父類的特征和行為,提高了代碼的復用性
> 多態:同一個行為有多個表現形式,
> 多態好處:消除類型間的耦合關系,可替代,可擴充,簡化,
### 多態的三個必要條件
```
繼承
重寫(子類繼承父類后對父類方法進行重新定義)
父類引用指向子類對象
```
### js定義對象的方法
- 字面量
~~~
person={
name:"小米",
age:23
};
~~~
```
function 構造函數(){
this.屬性;
}
構造函數.原型.方法=function(){};
var 對象1=new 構造函數();
對象1.方法();
```