class方法的疑问

local A = class("A",function ()
    return display.newNode()
end)

function A:ctor()
    printf("A ctor")
    self.sprite_ = display.newNode():addTo(self)
end


local B = class("B",A)

function B:ctor()
    B.super:ctor()
end

local b = B.new()


```

会报这么个错
  
NodeEx里面的代码是这样的
function Node:addTo(parent, zorder, tag)
    if tag then
        parent:addChild(self, zorder, tag)
    elseif zorder then
        parent:addChild(self, zorder)
    else
        parent:addChild(self)
    end
    return self
end


```

然后我查了原因,是因为只有在new的时候才会把父类的方法全部拷过来,但是我现在是只new了B类没有newA类。在调试的时候当断点在self.sprite_ = display.newNode():addTo(self)这一行的时候,看了self果然没有node的所有方法,那我这样调用就会有问题,不知道大家有没遇到这样的问题?是我这样调用不对吗?

我知道原因了,B.super:ctor()这一句应该写生self.super.ctor(self)