Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   Определить наличие свойства/метода (http://www.flasher.ru/forum/showthread.php?t=172152)

TanaTiX 02.12.2011 22:24

Определить наличие свойства/метода
 
Как определить наличие у абстрактного экземпляра класса определенного свойства (свойство как таковое и/или геттер/сеттер)? Мысли на этот счет есть, но все кажется сильно кривым и "закостылистым"... Спасибо.

GBee 02.12.2011 22:35

hasOwnProperty?

PainKiller 02.12.2011 22:35

Что значит у абстрактного экземпляра класса?

Inet_PC 02.12.2011 22:49

in, не?
У абстрактного значит у любого? Ибо абстрактных классов в AS3 нет.

TanaTiX 02.12.2011 23:22

PainKiller, т.е. не имеет значения экземпляр какого именно класса мы исследуем.

GBee, Inet_PC, да, но такие способы вернут true даже если доступен только геттер и, соответственно, вернут false, если доступен только сеттер.

Inet_PC 02.12.2011 23:50

тогда describeType Вам в помощь.

TanaTiX 03.12.2011 00:22

Inet_PC, сам describeType такую проблему не решит, но вкупе с одним из вышеприведенных способов... Спасибо за хорошую мысль.

Psycho Tiger 03.12.2011 00:24

Пардон конечно, но на кой хрен это надо?

TanaTiX 03.12.2011 00:38

Psycho Tiger, есть желание управлять изначально неизвестным свойством объекта. Создаю "скроллер". А вот что в качестве "скроллируемого" значения он будет "кушать" - изменение значения x, y, rotation или someValue - его интересовать не должно.

Psycho Tiger 03.12.2011 00:42

Ну да.
Но чего ты добьешься?
Смотри:
Код AS3:

var sprite:Sprite=new Sprite();
if (has("x")) sprite.x=10;
if (has("other")) sprite.other=5;
else throw new Error("Нет такого значения!");

И... всё. Только чуть более понятный текст RTE. Иначе вылетит нативное.
Это... не то, ради чего стоит стараться. Или я не так понял задачу?


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

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