JS面对对象基础

ES6面对对象的使用方法

面对对象思想介绍

在面对对象程序开发思想中,每个对象都是功能中心,具有明确的分工面的对象编程具有灵活、代码可复用性、容易维护和开发的优点,更适合多人合作的大型网络项目

基本语法

//注意,类不需要括号,要括号的是函数
class Star{
  //class body
}

constructor 构造函数

constructor()方法是类的构造函数(默认的方法),用于传递参数,返回实例对象,通过new命令生成对象实例时,自动调动该方法,如果没有显示定义,类内部会自动给我们创建一个constructor();

class Star{
  constructor(name){
//在constructor当中,接受了一个name变量,this指向的是实例
//在面对对象的思想当中,谁调用就指向谁
    this.name = name
  }
}

创建一个简单类并且调用

class Star{
  constructor(name){
    this.name = name
  }
}
//要注意,在面对对象当中,想要调用一个类。必须实例化一个对象,实例对象使用关键字new
//创建一个ldh实例,并且传入一个name
let ldh = new Star('刘德华')
//调用ldh.name来获取传入的name
console.log(ldh.name)

添加方法

class Star{
  constructor(name,age){
    this .name = name
    this.age = age
  }
  sing(){
    conlose.log(this.name+'唱的真好听')
  }
}
//实例化类
let zxy = new Star('张学友',18)
zxy.sing()

继承

extends

子类可以继承父类的属性和方法,通过关键字:extends

class Father{
//父类
}
class Son extends Father{
//子类继承父类
}
super关键字

super 关键字用于访问和调用对象父类上的函数。可以调用父类的构造函数,也可以调用父类的普通函数

class Ftaher{
    constructor(x,y){
        this.x = x;
        this.y = y;
    }
    Sum(){
        console.log(this.x + this.y);
    }
}
super.say就是调用父类里面的say()方法,普通函数
注意:子类构造函数当中使用super,必须放到this前面(必须先调用父类的构造方法,在使用子类构造方法)
class Son extends Ftaher{
    constructor(x,y){
        super(x,y);//调用了父类中的构造函数,他参数从子类传到父类
        }
    }
//向子类传递了3,4
var son = new Son(3,4);
//调用子类的方法,但是子类没有Sum方法,所以这个方法是父类的son.Sum();
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 目录一. 类与对象 1. ES5里的构造函数(constructor)与对象的生成 2. ES6里的类(class...
    意一ineyee阅读 394评论 0 1
  • 一、重点知识 如果在一个类中创建了另一个类的对象,如果想访问这个对象的属性,最好先判断这个对象空不空,否则容易空指...
    一花一世界yu阅读 396评论 1 1
  • 久违的晴天,家长会。 家长大会开好到教室时,离放学已经没多少时间了。班主任说已经安排了三个家长分享经验。 放学铃声...
    飘雪儿5阅读 7,563评论 16 22
  • 今天感恩节哎,感谢一直在我身边的亲朋好友。感恩相遇!感恩不离不弃。 中午开了第一次的党会,身份的转变要...
    迷月闪星情阅读 10,609评论 0 11
  • 可爱进取,孤独成精。努力飞翔,天堂翱翔。战争美好,孤独进取。胆大飞翔,成就辉煌。努力进取,遥望,和谐家园。可爱游走...
    赵原野阅读 2,770评论 1 1