美文网首页
面向对象的程序设计

面向对象的程序设计

作者: 言叶丶 | 来源:发表于2017-02-22 17:42 被阅读0次

new 一个对象的过程会发生什么

  1. 创建一个新对象‘
  2. 将构造函数的作用域赋值给新作用域,(将this执行该对象)
  3. 执行构造函数内的代码(给这个新的对象添加属性)
  4. 返回新对象

实现继承的几种方式

原型继承
function Foo () {
    this.name = 'foo';
}
Foo.prototype.show = function () {
    console.log(this.name);
}

function Bar () {}
Bar.prototype = new Foo();

var bar = new Bar();
console.log(bar instanceof Foo); // true
function Foo () {
    this.name = 'foo';
    this.age = 17;
}
Foo.prototype.show = function () {
    console.log(this.name);
}

var Bar = Object.create(Foo);
console.log(Bar.name, Bar.age); //foo, 17
//Bar没有构造函数,因此不能执行new操作,而且不具有show属性

var Peo = {
    name: 'peo',
    say: function() {}
}

var Son = Object.create(Peo);
借用构造函数实现继承
function Super () {
    this.name = 'name';
}
Super.prototype.show = function () {
    console.log(this.name);
}

function Sub () {
    Super.call(this);
}
var sub = new Sub();
// 相当于在new一个Sub对象的时候,执行一下Super函数,这种方式只会继承构造函数内部定义的name属性
组合继承

利用原型继承实现对原型属性和方法的继承, 借用构造函数来实现对实例属性的继承

function Super (name) {
    this.name =  name;
}
Super.prototype.show = function () {
    console.log(this.name);
}

function Bar (name) {
    Super.call(this, name);
}
Bar.prototype = new Super();
var bar = new Bar('bar');
console.log(bar.name); // bar
bar.show(); // bar

递归

arguments.callee();

闭包是指有权访问另一个函数作用域的变量的函数

相关文章

  • 《软件工程》笔记7

    面向对象的实现 面向对象的程序设计最好还是选用面向对象的编程语言。 良好的程序设计风格对于面向对象实现来说格外重要...

  • 第四章 对象与类

    1 面向对象程序设计概述 面向对象程序设计(简称OOP)是当今主流的程序设计范型 Java是完全面向对象的,必须熟...

  • 《Java核心技术卷 I》之 Java对象与类

    Java对象与类 面向对象程序设计 面向对象程序设计,简称OOP,Java语言就是完全面向对象的。 类 类(cla...

  • JavaScript面向对象编程指南--读书笔记(上)

    第一章:面向对象的JavaScript 面向对象的程序设计 面向对象程序设计(oop)中最常用到的概念: 对象、方...

  • python面向对象编程

    面向对象编程(一) 1、面向过程程序设计与面向对象程序设计: 面向过程的程序设计把计算机程序视为一系列的命令集合,...

  • oc编程思想

    面向对象概念 面向对象编程(Object Oriented Programming,OOP,面向对象程序设计)是一...

  • 编程语言基础概念1

    什么是面向对象? 面向对象:指在程序设计中采用封装、继承、多态等设计方法。 什么是面向过程? 面向过程:程序设计按...

  • 面向对象

    title:面向对象tags: 基础,Java 面向对象 面向对象程序设计简介 面向对象的基本思想是使用类、对象、...

  • 三、对象与类

    面向对象程序设计概述 面向对象的程序设计(简称OOP)时当今主流的程序设计范型,已经取代了“结构化”过程化程序设计...

  • JavaSE-面向对象编程

    [TOC] 第一章:面向对象-概述 1.1-什么是面向对象? 概述 面向对象是一种程序设计思想。 程序设计的目的是...

网友评论

      本文标题:面向对象的程序设计

      本文链接:https://www.haomeiwen.com/subject/jsuewttx.html