Форум 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=113827)

NewFolder 10.07.2008 13:30

Как узнать имя класса из статического метода?
 
Если бы метод был не статическим, то это можно было бы сделать так:
Код:

public function test():void{
    var className:String = getQualifiedClassName(this);
    var classDef:Class = getDefinitionByName(className) as Class;
}

Как реализовать аналогичную функцию, с условием, что она статическая, а объект класса ещё не создавался?

etc 10.07.2008 13:33

Функция не знает, какому классу принадлежит?

NewFolder 10.07.2008 13:39

Цитата:

Сообщение от __etc (Сообщение 751288)
Функция не знает, какому классу принадлежит?

Есть класс Box, от него наследуется десяток классов (AlertBox, ErrorBox, InfoBox...).

Поэтому мне нужно знать, какой именно класс вызвал функцию.

mre 10.07.2008 13:49

А перегрузка функций не устраивает?

etc 10.07.2008 13:51

Цитата:

Сообщение от NewFolder (Сообщение 751290)
Есть класс Box, от него наследуется десяток классов (AlertBox, ErrorBox, InfoBox...).

Поэтому мне нужно знать, какой именно класс вызвал функцию.

Тогда только если передавать ссылку на класс, иного пути я пока не вижу.

BlooDHounD 10.07.2008 15:47

Код:

public function test():void{
    var classDef:Class = ( this as Object ).contructor as Class;
}

относительно первого поста так проще :)

а относительно вопроса ... статический метод пренадлежит классу, и из какого бы Вы класса его не вызывали он останется именно тем класса, которого Вы его вызвали.


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

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