Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 1.0/2.0 (http://www.flasher.ru/forum/forumdisplay.php?f=93)
-   -   Помогите разобраться с классами (http://www.flasher.ru/forum/showthread.php?t=123594)

sereg 06.04.2009 11:07

Помогите разобраться с классами
 
Всем привет, проблема заключается в следующем.
Мне надо реализовать два класса:
1) Хранит информацию о графической фигуре, т.е высота, ширина, цвет, различные подписи и тд.
2) Класс, отвечающий за рисование данных фигур.Т.е. у этого класса должны быть методы:
- setData - читаем данные из xml
- setAType - выбираем как именно рисовать
- Draw - соответственно рисуем

Проблема в следующем. Занимаюсь флэшем две недели и точно не знаю как классы будут между собой взаимодействовать, т.е. не знаю как при чтении данных методом второго класса, записывать их в переменные первого класса, отвечающего за граф фигуры + заранее не известно сколько надо будет рисовать фигур.
Может у кого-нибудь есть какие идеи как это можно реализовать?

Заранее спасибо!

Stargazer 06.04.2009 18:05

А в чём необходимость разделять содержимое и методы их обработки?
Если у вас запланировано ровно 2 класса - предлагаю совместить их в 1. Если планируете в дальнейшем расширять число фигур - сделайте базовый класс и напишите в нём все основные методы. Потом можете расширяться новыми классами по мере необходимости.

Цитата:

Занимаюсь флэшем две недели и точно не знаю как классы будут между собой взаимодействовать
Практически также как и в большинстве других распространённых языков.
Основное отличие (в AS2), которое мне приходит на память - так это указатели на метод класса. Если планируете сохранять указатели на методы класса - то можете потерять контекст самого класса (this будет разрешаться не в тот объект).

Типизация в AS слабая (не просто слабая, а плохая), поэтому нужно внимательнее смотреть за возможными вытекающими ошибками.

sereg 06.04.2009 19:13

В том то все и дело, что надо обязательно делать два таких класса...

Stargazer 06.04.2009 19:57

Цитата:

не знаю как при чтении данных методом второго класса, записывать их в переменные первого класса, отвечающего за граф фигуры + заранее не известно сколько надо будет рисовать фигур.
записывать в переменные:

Код AS1/AS2:

myInstance.myVar= myVal

объявлять переменные в классе:

Код AS1/AS2:

public var myVar:Type;

либо
Код AS1/AS2:

private var myVar: Type;

свойства:

Код AS1/AS2:

private var _myProperty:Type;
public function get myProperty():Type{
    return _myProperty;
}
 
public function set myProperty(v:Type){
    _myProperty= v;
}



Часовой пояс GMT +4, время: 08:30.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.