0

我正在覆盖超类中的方法 ini,但奇怪的是,超类中的 ini 方法仍然被调用,尽管我没有使用 super 调用它

任何想法?这是haxe 3中的问题吗?ps:它是一个 OpenFL 项目,针对 flash ..

class superClass{
 function ini():Void 
 {
   // this line should not be reached, but, it is reached .. !
 }
}

class subClass extends superClass{
 override function ini():Void 
 {
   // I Am not calling super ini here ..
 }
}

编辑

这是我的代码摘要,您可以在其中看到我的类集:

class EComponent extends Sprite
{

}

class Component extends EComponent
{

    public function new(aBoard:Board) 
    {
        ini();
    }
    function ini():Void 
    {
    // I am checking this manually, 
    // because ini is called even though its BeziereWire instance!
        if (Std.is(this, BeziereWire))
        return;
    }

    function iniRotators():Void 
    {

    }
}

class BeziereWire extends Component
{
    override function ini():Void 
    {
        iniRotators();      
    }
}
4

1 回答 1

3

嗯,你的真实代码有问题。我做了一个测试项目,一切正常。这是一个测试 Main.hx - https://gist.github.com/sergey-miryanov/6658172

这是一个截图: 这是一个截图

于 2013-09-22T09:08:13.773 回答