JavaScript中面向对象的三大特性(一个菜鸟的不正经日常)
经过几天的学习,把jQuery给啃会了,但是运用的还不算特别熟练,总感觉自己在JavaScript方面的基础十分欠缺,所以继续拾起JavaScript,开始更好的编程之旅~
今天学的是JavaScript中面向对象的三大特性
1 . 抽象性
在JavaScript中的抽象性我感觉并不像其他的语言那样,个人的理解是如果需要一个对象描述数据,则需要抽取这个对象的核心数据,即:
1.1 提出需要的数据的核心属性和方法
1.2 不在特定的环境下无法明确对象的具体意义
2 . 封装性
将数据和方法(功能)组合到一起、
2 . 1 js对象就是键值对的集合,键值如果是数据(基本数据、复杂数据、空数据)就称为属性,如果键值是函数,那么就是方法。
2 . 2 对象就是将属性和方法封装起来
2 . 3 方法就是将过程封装起来
3 . 继承性
(自己没有但是别人有,拿来成为自己的 , 哈哈哈哈不正经的解释,笑笑就好)
继承同时具有两种含义:其一是继承基类的方法,并做出自己的改变和/或扩展——号称解决了代码重用问题;其二是声明某个子类兼容于某基类(或者说,接口上完全兼容于基类),外部调用者可无需关注其差别(内部机制会自动把请求派发[dispatch]到合适的逻辑)。
看到有许多说多态的,这里也说一句,多态性也是JavaScript的一大特点,基于对象所属类的不同,外部对同一个方法的调用,实际执行的逻辑不同。所以,多态实质上是继承的实现细节;那么让多态与封装、继承这两个概念并列,显然是不符合逻辑的。
个人不是很喜欢生硬的理解这些东西,按照自己的方式进行了理解,个人感觉有些可能不是很到位,所以希望有看到的大大们能够不吝赐教,谢谢啦
最新文章
- C#详解format函数,各种格式化
- SQL编程
- [NHibernate]一对多关系(级联删除,级联添加)
- [SharePoint 2013] Automatic deployment script
- java1234教程系列笔记 S1 Java SE chapter 02 写乘法口诀表
- 求解区间最值 - RMQ - ST 算法介绍
- 关于v$datafile中system表空间的status值始终为system
- String课后作业
- mybaits中xml文件大于号和小于号的处理方法
- java攻城狮之路(Android篇)--SQLite
- HTML-Canvas03
- 【Java 基础篇】【第十课】多态
- sdutoj 2152 Balloons
- not valid for Running the scheme
- Redis 3.0集群搭建/配置/FAQ
- PAT (Advanced Level) 1064. Complete Binary Search Tree (30)
- [转]彻底弄懂css中单位px和em,rem的区别
- Flask实战第3天:url_for使用
- 三种工具绘制errorbar图
- 第一节: 结合EF的本地缓存属性来介绍【EF增删改操作】的几种形式