js面向对象编程,继承自父类的属性为什么打印不出来?

发布于 8 年前作者 houna14753 次浏览最后编辑 8 年前来自 issues

子类中没有重新定义realname这个属性,会自动继承父类的realname属性,父类的realname属性在实例化的使用赋给一个值“小红”,为什么是undefined呢?

父类 Person.js

class Person{
    constructor(realname){
        this.realname=realname;
    }
    say(){
        console.log('我是'+this.realname)
    }
}
 
export default Person;

子类 Student.js

import Person from './Person.js';

class Student extends Person{

        constructor(){
            super();
            // this.realname="小红";
            this.school="清华";
        }
        say(){
            let str="我是"+this.realname+",我在"+this.school+"上学";
            console.log(str)
        }
    }
 
let person1=new Student("小红");  
person1.say()

打印出来是:

2 回复
xiaqiao
xiaqiao1 楼6 年前

你参数呢?

gwu
gwu2 楼6 年前

都提示undefined了,那就从为什么undefined找呀,一步步下来,问题不就解决了