Js 继承(二)

  // 定义动物类

        class Animal {

            // 定义动物类的构造函数

            constructor(nickName, sex, age) {

                    // 利用构造函数给动物的属性赋值

                    this.nickName = nickName

                    this.sex = sex

                    this.age = age

                }

                // 定义方法,并将方法添加到原型上

            sayHi() {

                console.log(`Hi!我叫${this.nickName},今年${this.age}岁,我是${this.sex}`);

            }

            eat(str) {

                console.log(`我喜欢吃${str}`);

            }

            sleep(time) {

                console.log(`我每天睡${time}个小时`);

            }

        }

        // 创建一个动物对象

        let a1 = new Animal('佩奇', '女生', 6)

        a1.sayHi()

        a1.eat('蛋糕')

        a1.sleep(12)

        console.log('-----------------------------------------');

        // 定义狗狗类

        // class关键字,定义类;extends关键字继承类,

        // 采用这种方式,Animal的方法,此刻已经全部继承过来了。

        class Dog extends Animal {

            constructor(nickName, sex, age, type) {

                //调用父类的构造函数,而且必须放在子类构造函数的最上方

                super(nickName, sex, age)

                this.type = type

            }

            play() {

                console.log(`我一只${this.type},我会玩飞盘`);

            }

        }

        let d1 = new Dog('旺财', '男生', 6, '拉布拉多')

        d1.sayHi()

        d1.eat('牛肉')

        d1.sleep(8)

        d1.play()

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • //定义动物类 function Animal(nickName, sex, age) { /...
    锦衣夜行001阅读 336评论 0 1
  • 定义动物类 class Animal{ constructor(nickName,sex,ag...
    林杨木阅读 407评论 0 0
  • (1)定义动物类 function Animal(nickName,sex,age){ //定...
    林杨木阅读 360评论 0 0
  • 1. 函数 1.1 函数的 3 种定义方法 1.1.1 函数声明 //ES5 functiongetSum(){}...
    Mrssssss阅读 456评论 0 0
  • 第十二天 04-基础进阶-第02天{对象进阶、内置对象} 第十二天对象工厂模式创建对象构造函数模式创建对象原型模式...
    believedream阅读 315评论 0 1

友情链接更多精彩内容