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

STILL.05 18.02.2008 17:50

область видимости класса
 
у меня усть 2 флешки game.swf и base.swf
загружается флешка game она подгружает base
в base имеется статичный класс например Config
получить этот класс в game можно через getDefinition

как сделать так что бы этот класс был виден в любом классе флешки game, можно ли это сделать?
если бы класс Config был во флешке game можно было бы в каждом классе (который хочет использовать Config) указать import pack.Config
и все, а как быть если класс в другой флешке и получается методом getDefinition ?

надеюсь я понятно изложил сють проблемы

etc 18.02.2008 17:59

Если не использовать getDefinition, то класс Config зашьется в game.

STILL.05 18.02.2008 18:05

хмм, интересно ) как я могу его использовать?

если я где то использую класс Config то на этапе компиляции флешка ругается что нет такого класса в game.swd

etc 18.02.2008 18:12

Там его и не должно быть.
Напишите интерфейс к классу Config и зашивайте в обе флешки.

STILL.05 18.02.2008 18:25

Цитата:

Сообщение от __etc
Напишите интерфейс к классу Config и зашивайте в обе флешки.

не совсем понятно как написать интерфейс к классу :(
можно по подробнее плиз, с фрагментом кода если можно :)

etc 18.02.2008 19:28

Фрагменты кода мне лень писать. Как использовать интерфейсы, можно узнать в справке.

STILL.05 19.02.2008 13:24

1) я так понял если я буду использовать интерфейсы то мне нужно реализовать класс Config в обоих флешках, т.к. интефейс не содержит в себе реализации а только описание

2) класс Config будет виден только в классах game и base
а мне нужно что бы я мог видеть этот класс из любого класса фвлешки game не имея ссылки на сам класс game. т.е. что бы я мог указать что то вроде import game.Config и использовать его напрямую

как это сделать?

etc 19.02.2008 13:28

Интерфейс должен быть в обеих флешках, Config (который реализует этот интерфейс) — только в одной.
Допустим, интерфейс называется IConfig, тогда в game мы пишем что-то вроде:
Код:

var config:IConfig = …getDefinition('game.Config') as IConfig;
if (config) {
  …
}


STILL.05 19.02.2008 13:32

все это я понял спасибо

если я создал переменную var config:IConfig в базовом классе флешки game
как мне получить ссылку на config (из другого класс) если нет ссылки на game
могу я как то сделать так что б переменная(класс) config была видна из любого класса флешки game

могу ли я в классах game указать что то вроде import game.config
и юзать класс config без ссылки на класс game

etc 19.02.2008 13:42

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

Используйте статические свойства класса.


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

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