我已经阅读了大多数 Javascript 继承参考,但恐怕我仍然在摸索如何做到这一点。
我正在尝试将几个类放在一起,在一般意义上,它们将具有相似的行为,并且认为使用原型可能是实现这一目标的一种方式。所以我创建一个基类如下:
function my_base_class()
{
var a_common_object = undefined; // The true value of this can't be set until runtime.
// some other stuff ...
};
理想情况下,我希望a_common_object
保持私密或至少受到保护,但让它正常工作将是一个很好的第一步。然后我需要创建几个派生类,这可能是其中之一:
function my_derived_class()
{
this.do_something_to_common_object = function()
{
// Here I need to reference my_base_class.a_common_object but
// at this point there's no relationship between the two classes
};
};
my_derived_class
我现在在创建实例时设置原型:
my_derived_class.prototype = new my_base_class();
var my_derived_class_inst = new my_derived_class();
所以在这一点上,我希望我有一个对象——my_derived_class_inst
它具有包含我可以访问my_base_class
的静态对象的特征。a_common_object
我有两个问题:
- 当两个类之间没有建立关系时,
a_common_object
我如何引用?my_derived_class
- 然后我怎样才能更改
a_common_object
为它的真实值,以便所有派生类无缝地获取新值。
请不要简单地向我介绍有关继承的标准参考网站,因为我已经阅读了其中的大部分内容,但我仍然不明智。在我看来,答案应该很简单,但到目前为止它让我无法理解。非常感谢。