什么是js面向对象?有什么特点?

什么是js面向对象?

1.首先,js面向对象是一种思想;
2.其次,遵循万物皆对象的准则;程序中的关键模块都可以视为对象,对象都是由属性和方法组成,属性可以理解为对象的特征,是静态的,方法可以理解为对象的行为,是动态的;例如,在汽车这个对象中,他的颜色,型号,大小就是他的属性,而行驶则是他的方法;
3.面向对象会使用对象的属性和方法,它不关注内部的细节和过程;同时也会构造对象。
4.在js中,所有的对象可以分为普通对象和函数对象。而Object ,Function 是JS自带的函数对象。凡是通过 new Function() 创建的对象都是函数对象,其他的都是普通对象。

面向对象有什么特点?

1.抽象:a)抽象是面向对象最为重要的特征。对象本身的状态与行为,以及对象之间的关系,都是抽象的结果。没有抽象,就没有对象,也就谈不上面向对象了。抽象是一种思维习惯,因此,抽象是面向对象的第一特征。b)把同类的对象共有的属性或方法抽出封装成单独的对象,在用到的时候给相应的对象使用;
以学生为例,把他的共同属性提取出来,比如,名字,学号等,而像爱玩还是爱学习,好动还是好静等这些不同的属性可以摒弃;
2.继承:简单来说就是一个对象继承另一个对象的属性和方法;

有两种继承方式:1,对象冒充,优点是可以实现多重继承,初始化 继承自父类的参数;缺点是浪费内存资源,所有的实例都会有一份成员方法的副本;2.原型方式,是指利用了prototype或者说以某种方式覆盖了prototype,从而达到属性方法复制的目的。

举个例子,儿子能继承父亲的姓,孙子也能继承父亲的父亲的姓;
3.封装:复杂的问题简单化,只考虑功能和结果,不考虑过程和内部细节。

举例jq库的使用。

4.多态:同一操作作用于不同的对象,可以有不同的解释,产生不同的执行结果。换句话说是引用类型在不同情况下的多种状态;
比如在js中的‘+’,在字符串中是链接作用,在数字中间是加法运算;再比如上课铃响了,上体育课的学生跑到操场上站好,上语文课的学生在教室里坐好一样。
多态最常见的三种方法:重载,重写,接口
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值