十三(5)、面向对象之函数的封装和重载 ------ 2020-

2020-01-01  本文已影响0人  自己写了自己看

1、封装:低耦合高内聚;

2、多态:重载和重写;

//(1)重载:方法名相同,形参个数或者类型不一样(Java中的定义),
// 所以JS中不存在真正意义上的重载;
// JS中的重载是指同一个方法,根据传参不同,实现出不同的效果;

public void sum (int n, int m) {};
public void sum (int n,int m, float x) {};
public void sum (int n, String m) {};
sum (10,20);
sum (10,20,30.5);
sum (10, 'AA');
// Java中这时三个不同的方法;

function sum (n, m) {};
function sum (n, m, x) {}
// 由于变量的提升机制,第一个sum会被第二个覆盖掉,所以页面中执行的是第二个函数;

// 这时JS中的重载;
function sum (x, y, z) {
  if (typeof z === 'undefined') {
      
   }
}

//(2)重写:在类的继承中,子类可以重写父类中的方法;
上一篇下一篇

猜你喜欢

热点阅读