浅谈前端面向对象oop思想

1.面向对象是一个比较虚的东西,js是面向对象的语言,一切皆对象。

2.什么是面向对象呢?

生活中有一些个东西呀,比如说一个电视,咱们也不知道里面的工作原理吧?但是咱们会按按钮呀~~~

咱们居然不知道原理就可以用了哎,好神奇

Date对象咱们知道哈,这个货有个getFullYear的方法吧,那么大家想一下,这个东西是怎么知道现在是哪一年的呢? 不了解吧,没关系,咱们会用呀,哦吼吼

,其实像这样的使用者可以不需要知道原理就可以使用它的功能呢,就叫面向对象啦~哦吼吼

什么是对象呢:是一对大象吗?no!

咱们不知道一些东西的内部长什么样子,但是咱们知道这个东西的功能和操作方法,这个货就是对象~~~

就像js里面的那些个对象,date呀,数组呀,咱们不知道内部是个什么原理,但是咱们知道它的属性和方法

其实对象就是一个整体,对外提供一些功能和操作是吧

那么面向对象其实是一种通用思想,可以在编程中用,也可以在生活中用,只不过在生活中这种思想不叫面向对象而已

在编程中呢,如何在使用某些功能来实现效果的过程中可以只关注功能,不关注内部细节的编程思想,就是面向对象

就像jq,咱们知道jq可以用$(".a")来获取一个jq的dom对象,咱们学习jq不需要去学习jq是怎么去获取dom对象的,只需要学习

用jq获取对象的那个操作就ok了,那么jq是不是就是用面向对象编程思想来编写的一个类库嘞

3.面向对象的特点

抽象:抽指把核心的东西抽出来,把与我们要解决的问题有关的东西拿出来摆在面前

比如咱们写一个员工管理系统,那么员工的身高体重什么的咱们是不是不需要去管呀,咱们只需要把姓名,工号,工资啥的 整出来是不是就好了呢

封装:让使用对象的人不考虑内部实现,只考虑功能使用 把内部的代码保护起来,只留出一些个api接口供用户使用

继承:就是为了代码的复用,从父类上继承出一些方法和属性,子类也有自己的一些属性

比如,咱们有一匹母马,咱们又想要一头骡子了,那怎么办,去买一头吗?不需要呀,咱们去借头公驴配个种就可以了呀

,那么这个骡子,是不是就继承了咱们原有的那个母马的基因了呀,这就是继承咯

多重继承是什么呢,盒子有一个功能是装东西,汽车有个功能是能跑,那咱们把汽车和盒子的功能都继承了,是不是就 是大卡车了呀

多态,对于咱们的js这种弱类型语言来说其实意义不大

你可能感兴趣的:(总结小计,设计模式,编程语言,javascript,jquery,面向对象编程)