powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Java [игнор отключен] [закрыт для гостей] / Вопрос по шаблонам
13 сообщений из 13, страница 1 из 1
Вопрос по шаблонам
    #34292177
Michael Ponomarev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Hi, All!

Что-то не могу сообразить как шаблон написать:
Код: plaintext
1.
     public   abstract  String getValue(<а здесь любой класс>);
Можно, конечно там Object, и потом к типу привести, но некрасиво как-то.

WBR, Michael Ponomarev.

Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
Вопрос по шаблонам
    #34292235
jusio
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
 public    abstract  <T> String getValue(T t);
...
Рейтинг: 0 / 0
Вопрос по шаблонам
    #34292244
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну, так че тут думать?
public abstract String getValue(<T> object);

А в конкретном типе конкретная реализация. Только кажется ещё надо будет <T> указать либо как генерик класса, либо как генерик метода.
...
Рейтинг: 0 / 0
Вопрос по шаблонам
    #34292259
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
jusio
Код: plaintext
 public    abstract  <T> String getValue(T t);


Точно! Что-то я совсем генерики подзабыл.
...
Рейтинг: 0 / 0
Вопрос по шаблонам
    #34292303
Michael Ponomarev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
о точно блин.
Спасибо.
...
Рейтинг: 0 / 0
Вопрос по шаблонам
    #34292830
Michael Ponomarev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Родительский класс:
Код: plaintext
1.
2.
3.
     public   abstract   class  Test {
         public   abstract  <T> String getValue(T t);
    }
Потомок, так компилится:
Код: plaintext
1.
2.
3.
4.
5.
     public   class  ChildTest  extends  Test {
         public  <Integer> String getValue(Integer i) {
             return  "1";
        }
    }
а так нет
Код: plaintext
1.
2.
3.
4.
5.
     public   class  ChildTest2  extends  Test {
         public  <String> String getValue(String i) {
             return  "1";
        }
    }
Hand.sys или brain.sys ?
...
Рейтинг: 0 / 0
Вопрос по шаблонам
    #34293198
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Michael PonomarevHand.sys или brain.sys ?


Sun_compiler_sux.sys
...
Рейтинг: 0 / 0
Вопрос по шаблонам
    #34293231
jusio
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ээээ. Вообще-то так это не делается. Что вообще требуется получить?
...
Рейтинг: 0 / 0
Вопрос по шаблонам
    #34293261
Michael Ponomarev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2jusio
получить хочется вот что:
в базовом классе
Код: plaintext
1.
 public   abstract  <T> String getValue(T t);

далее _напишу без шаблонов, с только смысл_

В наследнике 1:

Код: plaintext
1.
 public  String getValue(String value); {....}

В наследнике 2:
Код: plaintext
1.
 public  String getValue(Date value); {....}

В наследнике 2:
Код: plaintext
1.
 public  String getValue(Integer value); {....}
...
Рейтинг: 0 / 0
Вопрос по шаблонам
    #34293338
Michael Ponomarev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
поправка:
В наследнике 3 :
Код: plaintext
1.
 public  String getValue(Integer value); {....}
...
Рейтинг: 0 / 0
Вопрос по шаблонам
    #34293348
Фотография Timm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
1.
2.
 interface  Base<T>
    String getValue(T t);
}
?
...
Рейтинг: 0 / 0
Вопрос по шаблонам
    #34293409
Michael Ponomarev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
если быть до конца откровенным:
вот часть enum-a
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
     public   static  enum ResponseParamNames {
        RESULT {
            //public <T> String getValue(<T> t) {
                //return null;
            //}
        },
        ID {
            //public <T> String getValue(<T> t) {
                //return null;
            //}
        };
         public   abstract  <T> String getValue(T t);
    }
Только в случае RESULT хотелось бы getValue(String value),
в случае ID - getValue(Integer value),
ну и т.д. для каждого элемента Enum-a
...
Рейтинг: 0 / 0
Вопрос по шаблонам
    #34293579
Michael Ponomarev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Собственно разобрались:
на rsdn
...
Рейтинг: 0 / 0
13 сообщений из 13, страница 1 из 1
Форумы / Java [игнор отключен] [закрыт для гостей] / Вопрос по шаблонам
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]