Javascript 有没有一种方法可以实例化一个子类而不继承特定的属性?
让我们假设以下代码:Javascript 有没有一种方法可以实例化一个子类而不继承特定的属性?,javascript,class,inheritance,properties,Javascript,Class,Inheritance,Properties,让我们假设以下代码: class Animal{ constructor(name){ this.name=name; } } class Dog extends Animal{ constructor(lastname){ super(); this.lastname=lastname; } } var animal = new Animal('jim'); var rudy = new Dog('rudy'); 除了在子类实例化后删除rudy.n
class Animal{
constructor(name){
this.name=name;
}
}
class Dog extends Animal{
constructor(lastname){
super();
this.lastname=lastname;
}
}
var animal = new Animal('jim');
var rudy = new Dog('rudy');
除了在子类实例化后
删除rudy.name
之外,还有其他方法可以直接实例化子类而不使用父类的name属性吗?您可以使用非字符串值覆盖它,特别是未定义的
,这类似于不存在的属性:
class Dog extends Animal{
constructor(lastname){
super(undefined);
this.lastname=lastname;
}
}
但实际上,如果您的类没有“父”类所具有的所有属性,那么它根本不应该是子类-它将违反违反违反oop原则的。