基于Javascript的封装、方法重载、构造方法

封装

封装是面向对象编程中的一个重要特性,指的是将对象的状态(属性)和行为(方法)绑定在一起,并隐藏对象的实现细节,只暴露必要的接口。JavaScript通过类(class)和对象字面量(object literal)来实现封装。

class Person {
    // 构造方法
    constructor(name, age) {
        this._name = name;  // 私有属性
        this._age = age;    // 私有属性
    }

    // 公开方法
    getName() {
        return this._name;
    }

    setName(name) {
        this._name = name;
    }

    getAge() {
        return this._age;
    }

    setAge(age) {
        this._age = age;
    }
}

const person = new Person('Alice', 30);
console.log(person.getName()); // 输出: Alice
person.setAge(31);
console.log(person.getAge()); // 输出: 31

方法重载

JavaScript 不像一些其他语言(如 Java)那样支持直接的方法重载。方法重载通常是指同一个方法名可以有不同的参数类型和数量判断。在 JavaScript 中,通常通过检查函数参数来模拟重载的效果。

function greet(name, age) {
  if (arguments.length === 1) {
    console.log(`Hello, ${name}`);
  } else if (arguments.length === 2) {
    console.log(`Hello, ${name}, age ${age}`);
  } else {
    console.log("Hello, unknown");
  }
}

greet("Alice"); // Hello, Alice
greet("Alice", 30); // Hello, Alice, age 30

构造方法

构造方法是用来创建和初始化对象的特殊方法。在 JavaScript 中,构造方法通常是类中的 constructor 方法。构造方法会在实例化对象时自动调用。

class Person {
    // 构造方法
    constructor(name, age) {
        this.name = name;
        this.age = age;
    }
}

const person = new Person('panda', 25);
console.log(person.name); // 输出: panda
console.log(person.age); // 输出: 25

总结

  1. 封装通过类和方法隐藏对象的内部实现。
  2. 方法重载可以通过检查参数类型和数量来实现。
  3. 构造方法用于初始化对象的属性。
  4. 构造代码块可以在构造方法内用代码块来实现初始化逻辑。

更多资源

Class 的基本语法 - ECMAScript 6入门

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

前端熊猫

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值