面向对象编程
01 面层过程和面向对象编程
01 面向对象编程和面向过程编程是一种编程思想,和具体的语言关系不大。
02 面向过程编程和面向对象编程的主要区别
面向过程编程:
关注点在于解决问题需要的每一个详细的步骤
示例:
自己洗衣服的过程
① 收集需要洗的脏衣服
② 准备洗衣粉、洗衣液等
③ 把衣服放到一个盆里
④ 接水
⑤ 把洗衣粉放到盆里
⑥ 摩擦,摩擦,不断的摩擦
⑦ 把洗好的衣服用清水冲洗干净
⑧ 尽量把把洗好的衣服的水分拧干
⑨ 晾晒
面向对象编程:
关注点在于解决问题需要的对象身上
示例:
使用洗衣机洗衣服的过程
① 收集需要洗的脏衣服
② 找到合适的洗衣机
③ 设定洗衣服和烘干的程序
03 面向过程和面向对象他们的区别就类似于自己洗衣服和使用洗衣机洗衣服|自己做饭吃和去餐馆吃饭
面向对象编程的相关概念
01 对象
什么是对象? 所有的一切都是对象,在开发中有一项重要的工作就是对象的划分
一般来说,我们所指的对象是某个具体的事物,而非泛泛的类别
02 对象的特征(静态描述信息)
所谓特征就是一些特定的描述信息
如:学生(性别、年龄、班级、专业、籍贯、家庭住址)
如:汽车(颜色、车牌、品牌、价格等)
03 对象的行为(动态特性)
如:人(吃饭、睡觉、玩游戏、奔跑、运动等)
如:狗(吃、睡、咬人、叫、流口水)
04 js中的对象
键-值对(key-value)的集合。
05 现实生活中的对象和js对象的对应关系
静态的描述信息 - js对象中的属性(属性就是定义在对象内部的变量)
动态的行为特征 - js对象中的方法(方法就是定义在对象内部的函数)
06 代码示例:
var zhangsan = {
name:"张三",
sex:"男",
age:18,
address:"天上人间1号公馆",
eat:function () {
console.log('能吃');
},
sleep:function () {
console.log("能睡");
},
say:function () {
console.log("能说话");
},
run:function () {
console.log("能运动");
},
song:function () {
console.log("能唱歌");
}
};
//打印对象的属性并调用相关的方法
console.log(zhangsan.name,zhangsan.age,zhangsan.address);
zhangsan.say();
zhangsan.sleep();