javascript - JavaScript中如何从基类继承静态方法?

标签 javascript oop inheritance static

我试图用继承的原型(prototype)方式在JavaScript中实现一些基本的OOP。但是,我找不到从基类继承静态成员(方法)的方法。

我们可以使用prototype来模拟基本的类模型:

SomeClass = function(){
    var private_members;

    this.public_method = function(){
        //some instance stuff..
    };
};

Class.static_method = function(){
    //some static stuff;
};

//Inheritance
SubClass = function(){ //sub-class definition };
SubClass.prototype = new Class();

但是,SubClass 不会从 Class 继承 static_method

最佳答案

在经典(OO)继承模式中,静态方法实际上并没有被继承。因此,如果您有一个静态方法,为什么不在需要时调用:SuperClass.static_method(),JavaScript 不需要保留额外的引用或同一方法的副本。

您还可以阅读此JavaScript Override Patterns更好地理解如何在 JavaScript 中实现继承。

关于javascript - JavaScript中如何从基类继承静态方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5441508/

相关文章:

javascript - Google map 简单多标记示例更多 6 个标记不起作用

java - 枚举对象应该是无状态的吗?

c++ - 制作以基类为参数的函数指针并发送派生类

C++:条件继承是否可能

javascript - 页面刷新导致用户在angular js中自动注销

javascript - AngularJs 发布请求获取错误

javascript - 获取所有角色权限列表

python - 正在定义的类型对象的类型提示

matlab - 这种设计模式(动态环绕另一个类)有名称吗?

c++ - 我怎样才能防止这种在 C++ 中的转换