什么是面向对象?
这是一种编程范式,简单点就是谁做了什么事情,或者让谁做什么事。按照这种模式写代码,就是面向对象了。
1、什么是对象
对象是一种无序属性的集合,其属性可以包括基本值、对象或者函数。
简单点就是对象由各种属性和方法组成。
2面向对象的特点
封装:让使用对象的人不考虑内部实现,只考虑功能使用 ,把内部的代码保护起来,只留出一些个接口供用户使用
继承:就是为了代码的复用,从父类上继承出一些方法和属性,子类也可定义自己的一些属性
多态:实际上是不同对象作用与同一操作产生不同的效果。多态的思想实际上是把“想做什么”和“谁去做“分开。
3、对象的创建
1)通过JavaScript内部的对象
var obj = new Object();
obj.name = “张三”;
obj.age = 18;
obj.info = function() {
console.log(this.name + “的年龄:” + this.age);
}
-
通过字面量
var obj={
name :“张三”,
age:18,
info: function() {
console.log(this.name + “的年龄:” + this.age);
}
} -
通过自定义构造函数
function Person(name,age){
this.name=name;
this.age=age;
this.info=function(){
console.log(this.name + “的年龄:” + this.age);
}
}
var obj=new Person(“张三”,18);
obj.info(); -
通过工厂模式创建
function create(name,age){
var obj=new Object();
obj.name = “张三”;
obj.age = 18;
obj.info = function() {
console.log(this.name + “的年龄:” + this.age);
}
return obj
}
var obj=create(“张三”,18);
obj.info();