gpt4 book ai didi

javascript - Typescript 隐藏父类(super class)的 Prop

转载 作者:搜寻专家 更新时间:2023-10-30 20:55:21 26 4
gpt4 key购买 nike

我有一个扩展另一个类的类。例如:

class Store extends BehaviorSubject {
constructor(obj) {
super(obj)
}
}

我还有更多类扩展 Store。我需要的是一种从 BehaviorSubject 父类(super class)中隐藏某些属性的方法,例如 next() 方法。

class SomeStore extends Store {

}

// I want to hide from this class some methods, properties
// That exists on the BehaviorSubject class.
const s = new SomeStore();

有办法吗?

最佳答案

没有。您可以覆盖子类中的方法来做其他事情(或什么都不做),但这违反了 Liskov 替换原则。

如果您的 Store 类不是 BehaviorSubject,并且不像 BehaviorSubject,那么扩展是不正确的。在这种情况下,Store 应该包含一个 BehaviorSubject 的私有(private)实例,并且如果有必要,通过“代理”它们来公开它的一些方法/属性。

关于javascript - Typescript 隐藏父类(super class)的 Prop ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47936723/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com