0

在一個類層次結構,其中:如何解決錯誤「名稱空間中的定義*存在衝突」。使用ASC2.0?

MngLayers延伸Manager_Panel,延伸Manager_Base ...

- 在Manager_Base,我定義的init()方法:

public class Manager_Base { 
    //.... 

    public function init():void { 
     //Do initialization here... 
    } 
} 

- 在Manager_Panel,我不會覆蓋init()方法。

- 在MngLayers,我重寫了init()方法。

public override function init():void { 
    super.init(); 
    //Do custom initialization here... 
} 

當我嘗試編譯,我得到這個無益的編譯錯誤:

Error: A conflict exists with definition init in namespace public.

我不知道這個事情,但我使用的ASC2.0編譯器(從AIR SDK 3.7),支持-inline

在編譯器中是否有東西被破壞,阻止它像前面的編譯器一樣進行簡單的方法重寫編譯?

回答

0

AH!該死的,好吧,這只是ASC2.0不夠描述!

我的壞,我有一個重複init()所有這一次在葉子類(MngLayers)的重寫方法。如果編譯器指出重複一個,它會有所幫助!

希望這可以幫助任何人做出同樣的菜鳥錯誤! :D

+0

該錯誤實際上是非常具有描述性的。使用「公共」名稱空間的「init」有相互衝突的函數名稱。 – 2013-04-25 21:04:19

+0

不,因爲它沒有指出任何(或兩個)方法聲明衝突的行號。 – bigp 2013-04-26 01:12:08

相關問題