有关JS的多态,封装,继承

本文介绍了面向对象编程中的核心概念——多态、封装和继承。通过实例展示了如何利用多态消除条件判断,提高代码可读性;封装则通过隐藏对象的实现细节,减少对象间的耦合;JavaScript中的继承机制则展示了对象从其他对象克隆创建的过程。这些概念是理解JavaScript和其他面向对象语言基础的重要部分。
多态

多态最根本的作用就是通过把过程化的条件分支语句转化成对象的多态化,从而消除这些条件分支语句

例子
  
  //谷歌地图
var googleMap = { show: function(){
  console.log( '开始渲染谷歌地图' ); }
 }
 //百度地图
var baiduMap = { show: function(){
  console.log( '开始渲染百度地图' ); }
};

//没有用到多态调用地图 使用条件判段 
var renderMap = function( type ){ 
 if ( type === 'google' ){ 
    googleMap.show();
}else if ( type === 'baidu' ){ 
    baiduMap.show();
} };
//用到了对象的多态性 不同的对象调用相同的方法 show 就会产生各自不同的执行结果
var renderMap = function( map ){
   if ( map.show instanceof Function ){
      map.show(); 
      }
};
renderMap( 'google' ); // 输出:开始渲染谷歌地图
renderMap( 'baidu' ); // 输出:开始渲染百度地图

封装

封装的目的是将信息隐藏。隐藏实现细节、设计细节以及隐藏对象的类型等。使得对象内部的变化对其他对象而言是不可见的。
其他对象或者用户都不关心它的内部实现。封装使得对象之间的耦合变得松散。

继承

JavaScript 本身是一门基于原型的面向对 象语言,它的对象系统就是使用原型模式来搭建的。
在 JavaScript 语言中不存在类的概念,对象也并非从类中创建出来的,所有的 JavaScript 对象都是从某个对象上克隆而来的。

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值