Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Java: Общие вопросы > Структура классов и их свойств.


Автор: Fieral 24.3.2008, 16:02
Добрый день. Возник вопрос. Заранее извиняюсь за сумбур, но уж как есть.

В общем, я пишу класс под названием например "Thing"
и у этой thing должен быть набор параметров которые планируется добавлять и убирать.
Параметр по сути пара вида <имя-параметра, его_реализатор> которую я оформил ввиде HashMap.

"его_реализатор" будут 3-х типов:

1 тип "базовый": int, String, Double.
2 тип "структурный": состоит из экземпляров классов "Thing"
3 тип "мульти": это наборы любой длинны из типов вида 2 или 1
например: 10 int-ов или 5 экземпляров класса "thing", при этом число их я заранее не знаю (реализовано классом Vector)

при этом хочется обойтись одним HashMap у Thing для хранения параметров, а не писать 3 - по одному на тип

вопрос - как это можно сделать цивилизованно (оформить класс параметров)?

конечная цель -  класс Thing имеет один метод для добавления параметра (вида addParam(param p);)
а не 4 метода 
addParamClass(ParamClass p);
addParamBasic(ParamBasic p);
addMultiParamClass(МultiParamClass p);
addMultiParamBasic(MultiParamBasic p);

или лучше всё-же написать 3 хешмапа?

программирование скажем так - не мой профиль, поэтому буду рад если объясните на пальцах или хотяб ткнёте в какую сторону гуглить  smile 

Автор: v2v 24.3.2008, 23:17
ThingParameter
и 3 наследника: 
ThingParameterBasic
ThingParameterStruct
ThingParameterMulti

Код

class Thing {
ThingParameter ...
addParameter(ThingParameter ...){ ... }
...
}

Автор: Fieral 27.3.2008, 16:04
ок,
попутный вопрос:

Код

public enum PrTYPE {
    String,Double,Integer;
    
    public <T> toType(Object o){
        
    return (T)o;
    }

}


пишет Return type for the method is missing

как правильно делается параметризация?

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)