前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >面向对象编程

面向对象编程

原创
作者头像
菜园前端
发布2023-05-16 23:32:33
3270
发布2023-05-16 23:32:33
举报
文章被收录于专栏:前端学习文档前端学习文档

原文链接:https://note.noxussj.top/?source=cloudtencent

什么是面向对象编程?

面向对象程序设计(Object Oriented Programming,OOP)是一种计算机编程架构,也可以理解为是一种编程的思想。面向对象程序设计的核心就是对象和类,对象也是类的实例化,类是对现实对象的抽象。对象间通过消息传递相互通信,来模拟现实世界中不同实体间的联系。OOP 达到了软件工程的三个主要目标:重用性、灵活性和扩展性。在 JavaScript 中处处皆是对象,不像其他编程语言一样,JavaScript 中是没有类的存在,只能通过一系列的方法进行模拟成类。

指导

面向对象就是把现实世界中的事物抽象成程序世界中的类和对象,通过封装、继承、多态来演示事物事件的联系。

对象 Object

对象的成员主要包含属性、方法。

代码语言:javascript
复制
const person = {
    name: 'xiaoming',
    age: 18,
    eat: () => {
        console.log('我会吃饭')
    }
}

类 Class

类主要包含静态属性、静态方法、实例属性、实例方法。类的命名必须以大写字母开头。

代码语言:javascript
复制
/**
 * 定义一个构造函数(类)
 */
function Person() {}

/**
 * 静态属性
 */
Person.class = 'class1'

/**
 * 静态方法
 */
Person.study = function () {
    console.log('我在学习')
}

/**
 * 实例属性
 */
Person.prototype.age = 18

/**
 * 实例方法
 */
Person.prototype.eat = function () {
    console.log('我会吃饭')
}

/**
 * 通过new关键字实例化出一个xiaoming实例
 * xiaoming继承了Person的age实例属性和eat实例方法
 */
const xiaoming = new Person()

/**
 * 通过new关键字实例化出一个libai实例
 * libai继承了Person的age实例属性和eat实例方法
 */
const libai = new Person()

/**
 * 以上两个实例的成员都是独立的,互不影响
 */

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 什么是面向对象编程?
  • 对象 Object
  • 类 Class
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档