Показать сообщение отдельно
Старый 17.07.2007, 13:35
Pasha L вне форума Посмотреть профиль Отправить личное сообщение для Pasha L Найти все сообщения от Pasha L
  № 8  
Ответить с цитированием
Pasha L

Регистрация: Jul 2007
Сообщений: 25
__etc, умение программировать и знание языка программирования - разные вещи. Я думаю, что заметно, что iNils несколько отошел от темы в своем посте №4.

Так. Значит. CorC предлагает так? (я изменил _специально_ некоторые имена, чтобы участвующим в теме было легче его воспринимать)

Код:
class Class1 {
    private var xVariable,yVariable,zVariable:Number;
    private var class2Variable:Class2;
    function Class1(argumentOfClass2:Class2){
        class2Variable=argumentOfClass2;
        xVariable=0;
        yVariable=0;
        zVariable=0;
    }
    public function set x(argument:Number){
        xVariable=argument;
        class2Variable.theFunctionINeedToCall();
    }
    public function set y(argument:Number){
        yVariable=argument;
        class2Variable.theFunctionINeedToCall();
    }
    public function set z(argument:Number){
        zVariable=argument;
        class2Variable.theFunctionINeedToCall
    }
    public function get x(){
        return xVariable;
    }
    public function get y(){
        return yVariable;
    }
    public function get z(){
        return zVariable;
    }
}
class Class2 {
    var class1Variable:Class1;
    function Class2(argumentOfClass1:Class1){
        class1Variable=argumentOfClass1;
    }
    function theFunctionINeedToCall(){
        trace("called");
    } 
}

Код программы:
var objectOfClass1:Class1;
var objectOfClass2:Class2;
objectOfClass1=new Class1(objectOfClass2);
objectOfClass2=new Class1(objectOfClass1);
objectOfClass1.x=5;
Да, это одно из решений проблемы. Но я повторюсь: хотел бы решить свою задачу, не затрагивая структуры класса Class1 (оставив в нем только переменные x, y, z, не задействовав переменную class2Variable и не задействовав гет-сеты в Class1)