PDA

Просмотр полной версии : добавить свойство объекту класса


Evgan
22.09.2011, 15:35
день добрый
не серчайте сильно за глупые вопросы, так как не владею всеми аспектами тонкостей ОПП
Подскажите как добавить свойство объекту класса, не влезая в "родительский" класс?

вот к примеру "родительский" класс:


package main {
public class Selecter extends Sprite {
// [ К О Н С Т Р У К Т О Р ]
public function Selecter () {}
// [ С В О Й С Т А В А ]
public var id:int;
}
}


создам объект этого класса:


package main {
public class SCENE extends Sprite {
// [ К О Н С Т Р У К Т О Р ]
public function SCENE() {
var But:Selecter = new Selecter();
But.id=5; // Объект But имеет свойство id
But.id2= 2; // Объект But НЕ имеет свойство id2
// А вот возможно ли в этой части когда добавить объекту But ещё одно свойство "id2", не прописывая его в классе "Selecter"
}
}
}


Надеюсь доступно изложил суть моего вопроса.

Буду весьма благодарен за помощь

trng
22.09.2011, 15:43
Если родительский класс объявить как dynamic то можно
public dynamic class Selecter extends Sprite

Добавлено через 3 минуты
Но правильнее создать класс-наследник с добавленным нужным свойством:


public class Selecter2 extends Selecter {
public var id2:int;
}

fish_r
22.09.2011, 15:47
почитайте в хелпе про динамические классы

trng
22.09.2011, 15:47
И соответственно:
var But:Selecter2 = new Selecter2();

Evgan
26.09.2011, 12:08
спасибо