面向对象编程!大厂必问!!!

面向对象编程

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

什么是面向对象编程?

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


对象 Object

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

const person = {
 name: 'xiaoming',
 age: 18,
 eat: () => {
 console.log('我会吃饭')
 }
}

类 Class

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

/**
 * 定义一个构造函数(类)
 */
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()
/**
 * 以上两个实例的成员都是独立的,互不影响
 */

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

作者:菜园前端原文地址:https://segmentfault.com/a/1190000043559044

%s 个评论

要回复文章请先登录注册