gpt4 book ai didi

javascript - TypeScript 类可以删除对继承方法的访问吗?

转载 作者:行者123 更新时间:2023-11-28 18:21:13 25 4
gpt4 key购买 nike

类从父类(super class)扩展时可以添加方法,但它们可以做相反的事情并删除方法吗?目标是使这些被删除的类在编译时不可访问。我本质上是想获得(新车())。不要在 IDE 中自动完成 .drive()。

class vehicle {
drive() {
...
}
}

class car extends vehicle {
//previous attempt
private drive() { // can't modify public/private

}


}

有没有办法在编译时(tsc)阻止汽车使用方法驱动?我们可以删除它或修改它的可访问性吗?

最佳答案

没有。正如评论中所述,这表明您的层次结构不正确。派生类必须始终可替换其基类。

你必须考虑当有人编写这样的代码时会发生什么

function doSomething(y: Vehicle) {
y.drive();
}
let x = new Car();
doSomething(x);

关于javascript - TypeScript 类可以删除对继承方法的访问吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39842345/

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