我想修改一个Accordion课程以满足我的需要。
我不想简单地扩展Accordion,而是将整个类复制并粘贴到src文件夹中,将新类名“MyAccordion”作为开头。获得最大的自由(我假设)。
然而,遇到了几个问题。对于“include”../core/Version.as“;”错误,我用一个显式的版本静态const字符串替换它解决了。但是对于由继承引起的问题,例如AccordionHeader等,我发现在下传流时会有太多文件需要编辑。我怀疑我误解了编辑课程的整个逻辑。
有人能给我一些帮助吗?可能是我阅读的一些参考,甚至只是我搜索的一些关键词。提前谢谢。
答案 0 :(得分:3)
嗯 - 由于您发现的所有原因,在利用像这样的“样板”代码时,您实际上没有灵活性。使用Extend and Override正确修改现有类:
package com.yourSite.src
{
public class Foo
{
public function Foo
{
}
public function foo():void
{
trace("foo");
}
}
}
package com.yourSite.src
{
public class Bar extends Foo
{
public function Bar
{
}
override public function foo():void
{
trace("bar");
}
}
}
因此,编写一个扩展Accordion的类,并覆盖您想要以不同方式工作的任何内容。您可以根据需要添加您可能需要的任何其他功能。 OOP 101:D
查看上面的链接,进行更具凝聚力的讨论。
干杯!