Class和普通构造函数的区别

本文探讨了JavaScript中Class语法的优势,包括更贴近面向对象的写法,提高代码的可读性和理解性,以及便于与Java等后端语言对接。同时,文章解析了Class语法的本质及其实现机制。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1. Class 在语法上更加贴合面向对象的写法

2. Class在实现继承上更加易读、易理解

3. 更易于写java等后端语言

4.本质还是语法糖,使用prototype

 

 

Class语法

typeof MathHandle // 'function'

MathHandle.prototype.construcroe === MathHandle  // 构造函数的显示原型有个construvtor等于它的构造函数本身

m.__proto__ === MathHandle.prototype // true  new时候,隐式原型等于显示原型

  

js构造函数

 

 

 

### 构造函数普通成员函数在面向对象编程中的区别 构造函数普通成员函数是面向对象编程中两个重要的概念,它们在功能、调用方式以及使用场景上有显著的区别构造函数是一种特殊的方法,主要用于在创建对象时初始化对象的状态。它的命名必须类名完全相同,并且没有返回值类型,包括不能使用`void`来修饰[^1]。当定义一个类的时候,即使没有显式地提供构造函数,编译器也会提供一个默认的构造函数[^5]。构造函数的主要作用是在对象实例化时设置初始状态,这通常涉及到为类的成员变量分配初始值。例如,在C++中,可以定义一个简单的类`Geeks`并为其提供一个默认构造函数: ```cpp #include <iostream> using std::cout; class Geeks { public: int id; Geeks() { // 默认构造函数,不带参数 id = 0; // 给类成员设置初始化值 } }; ``` 此相对,普通成员函数则是用来描述一类事物的公共行为。它们有明确的返回值类型(如果不需要返回值,则应声明为`void`),并且其名称只需符合标识符的命名规则即可,无需类名一致[^1]。普通成员函数可以通过已存在的对象进行多次调用,以执行特定的操作或改变对象的状态。 从调用机制上看,构造函数是在创建对象时由系统自动调用的,而普通成员函数则需要开发者通过对象实例来手动调用[^1]。这意味着构造函数只能在对象创建时运行一次,而普通成员函数可以根据需要被调用多次。 此外,构造函数还支持重载,这意味着同一个类可以拥有多个构造函数,这些构造函数之间通过参数列表的不同来区分。这样做的目的是为了允许灵活的对象初始化方式。比如,除了无参构造函数外,还可以有一个带参数的构造函数,用于根据传入的参数设置对象的初始状态[^2]。 综上所述,构造函数普通成员函数之间的主要差异体现在以下几点: - **用途**:构造函数专用于初始化新创建的对象;而普通成员函数则用于实现对象的行为。 - **返回值**:构造函数没有返回值类型;普通成员函数必须指定返回值类型。 - **调用时机**:构造函数仅在对象创建时自动调用;普通成员函数则由程序员决定何时调用。 - **可调用次数**:构造函数对于每个对象只会被调用一次;普通成员函数可以在程序执行过程中被多次调用。 理解这两者之间的区别有助于更好地设计类结构管理对象生命周期。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值