Цитата:
|
М.б. в таком случае лучше использовать композицию, а не наследование?
|
а что это?
Добавлено через 20 минут
Вобщем, я понял.Из расширяемого класса нельзя считать метод или переменную,но можно в него передать заранее, на этапе инициализации конструктора.Если кому интересно что я собсна хотел получить вот код
Расширяющий класс

Код AS3:
package{
import flash.display.*;
import flash.geom.*;
import flash.events.*;
public class RedBox extends MoveController {
public static var c:int = 276;
private var bgColor:uint = 0xAE0D0D;
private var borderColor:uint = 0x666666;
private var borderSize:uint = 3;
private var cornerWidth:uint = 16;
private var cornerHeight:uint = 16;
public function RedBox(x:Number,y:Number) {
var t = RedBox;
super(t);//этот метод передает этот класс в расширяемый класс MoveController.Можно передать статическую переменную с таким образом var t = RedBox.c;
var child:Shape = new Shape();
child.name = "RedBox"+x;
child.graphics.beginFill(bgColor);
child.graphics.lineStyle(borderSize, borderColor);
child.graphics.drawRect(x, y, cornerWidth,cornerHeight);
child.graphics.endFill();
addChild(child);
this.addEventListener(MouseEvent.MOUSE_DOWN,onMousedown);
this.addEventListener(MouseEvent.MOUSE_UP,onMouseup);
}
}
}
Расширяемый класс

Код AS3:
package{
import flash.display.*;
import flash.geom.*;
import flash.events.*;
public class MoveController extends Sprite {
public var a:Number = 6;
private var al;
public function MoveController(t) {
al = t//Здесь я принимаю значения от расширяющего класса.
trace("al= "+ al)
}
public function onMousedown(e:MouseEvent):void {
e.stopPropagation()
e.target.startDrag();
}
public function onMouseup(e:MouseEvent):void {
e.stopPropagation()
e.target.stopDrag();
}
}
}
Как оказалось все не так страшно(для меня).Коля Муков помог))