Форум программистов, компьютерный форум, киберфорум
ActionScript
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.64/11: Рейтинг темы: голосов - 11, средняя оценка - 4.64
1 / 1 / 0
Регистрация: 13.12.2012
Сообщений: 102
1
AS 3.0

Как в as3 можно избавиться от оператора switch-case?

02.12.2014, 13:15. Показов 2007. Ответов 1
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Добрый день!
Использую в программе фабрику создания экземпляров животных
ActionScript 3
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
public class AnimalFactory
    {
        public function AnimalFactory() { } 
        
        public function createAnimal(typeAnimal:String):Animal
        {
            switch(typeAnimal)
            {               
                case "dog":
                    return new Dog();                   
                    break;
                case "cat":
                    return new Cat();
                    break;
                case "rabbit":
                    return new Rabbit();
                    break;
                                ...                         
            }
            return null;
        }       
    }
Соответственно, создание экземпляра происходит примерно так:
ActionScript 3
1
2
animalFactory:AnimalFactory = new AnimalFactory();
animal1:Animal = animalFactory.createAnimal("dog");
Как в AnimalFactory можно избавиться от оператора switch-case? Ибо типов животных много, они постоянно добавляются/удаляются, и всё это как минимум не очень удобно. Может быть в as3 есть какие-то возможности вызывать конкретный класс по стринговому идентификатору или что-то вроде ссылок на функции, как в c++?
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
02.12.2014, 13:15
Ответы с готовыми решениями:

Можно ли как-то заставить сработать одновременно все case у оператора switch?
Вопрос в заголовке темы:)

ООП или как избавиться от switch -case
Нужен совет, есть порядка 20 методов, которые по сути принимают ввод с клавиатуры, и делают они...

Оператора switch / case
Локатор ориентирован на одну из сторон света ( «С» - север, «Ю» - юг, «З» - запад, «В» - восток) и...

Использование оператора switch/case
Начал учить c++, по идее код должен рисовать линию параметры которой задаёт пользователь. После...

1
Модератор
2910 / 1769 / 179
Регистрация: 19.02.2011
Сообщений: 6,503
02.12.2014, 13:31 2
Лучший ответ Сообщение было отмечено agiliter как решение

Решение

getDefinitionByName?
1
02.12.2014, 13:31
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
02.12.2014, 13:31
Помогаю со студенческими работами здесь

Использование оператора switch/case
Недавно начал изучать C++ и решил написать простенький калькулятор, в итоге получил ошибки. ...

Как можно избавиться от оператора break?
class Program { static string Str(StringBuilder s, char fnd) { ...

Можно как-то сократить код с switch case?
Можно как-то сократить следующий код с switch case? switch (labelFileSaved.Text) { ...

Составить программу с использованием оператора switch Case
помогите составить программу с использованием оператора switch...case

Конвертер величин с использованием TextBox и оператора switch case
моя проблема у меня 4 TextBox (мм, см, дм, м) я пишу программу, которая должна переводить на пример...

Символы и числа в метках case оператора выбора switch
На вход программе поступает числовое выражение оценки (2, 3, 4, 5), на выход— строковое выражение...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru