慎用UIComponent—-顺便提醒下函数返回值

Categories: Flex; Tagged with: ; @ October 17th, 2008 17:41

前几天写某组件,要求有get ui(),该函数返回一个UIComponent.
很弱很挫很SB的我直接开始写
XX类中:
public function get ui():UIComponen t{
      var _ui:UIComponent = new UIComponent();
      …. 
      return _ui;
}

然后在另一个类中测试: addChild(xx.ui);
发现没有任何显示. 不过"细心"的我还是发现增加了一个小白点…. 后来才知道,
UIComponent是一个抽象类[虽然ActionScript中没有这个概念],当然作为众多Compontent的父类,他抽象一些是应该的. 所以UIComponent不具备一些属性,即便设置了,也不起作用…… 解决方法:返回一个UIComponent的子类,需要什么,返回什么….

关于返回值: 如果要求返回一个UIComponent, 则意味着可以返回UIComponent的任意子类. 如果有一个类:Person,下面有两个子类,Man,Woman, 如果要求返回一个Person,我会自然而然的返回一个Man或时Woman[这里我没有鄙视双性人的意思] 但是到了UIComponent,就被自己忽悠了…



// Proudly powered by Apache, PHP, MySQL, WordPress, Bootstrap, etc,.