zoukankan      html  css  js  c++  java
  • 面向对象 继承

    继承:子类继承父类,在react开发中经常见到,前端用的算多
    // 父类
    class People {
        constructor (name, age) {
            this.name = name
            this.age = age
        }
        eat() {
            alert(`${this.name} eat something`)
        }
        speak() {
            alert(`my name is ${this.name}, age ${this.age}`)
        }
    }
    
    /**
     * 子类继承父类,父类的人有姓名,年龄,可以吃,可以说,是个人就有这些属性
     * 人分很多种,我们用学生举例,学生也是个人,有这些基本属性,学生另外有学号,其他人没有
     * 学生另外有学习这个动作,其他人可能没有。
     */
    
    class Student extends People{
        constructor(name, age, number) {
            super(name, age)
            this.number = number
        }
        study() {
            alert(`${this.name} study`)
        }
    }
    
    // 实例,子类既可以用自己的方法,也可以用父类的方法
    let xiaoming = new Student('xiaoming', 10, 'A1')
    xiaoming.study()
    console.log(xiaoming.number)
    xiaoming.eat() // 因为父类有eat,继承了父类
    
    let xiaohong = new Student('xiaohong', 11, 'A2')
    xiaohong.study()
    xiaohong.speak()// 因为父类有speak,继承了父类
    People是父类,公共的,不仅仅服务于Student,比如工人,老师
    继承可将公共方法抽离出来,提高复用,减少冗余
  • 相关阅读:
    MS SQL Server获取月份名称缩写
    视频站点程序
    视频站点程序 Ver2
    Infor Syteline 数据库增长月报表
    判断是否有选择RadioButtonList
    获取用户控件中控件的ID
    FileUpload上传图片前首先预览一下
    为TextBox装饰水印
    导航条的重构
    用户自己排序记录
  • 原文地址:https://www.cnblogs.com/wzndkj/p/11706657.html
Copyright © 2011-2022 走看看