|
|
|
Десериализация json в обобщенный класс
|
|||
|---|---|---|---|
|
#18+
Использую GSON для десериализации: Код: java 1. 2-й параметр конструктора это либо Class<T> , либо Type . Как можно сделать то же самое, но с генерик-типом? Т.е. у меня есть метод: Код: java 1. И я хочу звать его так: Код: java 1. Это возможно? У меня не получилось... На данный момент решаю так (на SO, но некрасиво получается и путанно), добавляю новый входной параметр с классом: Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. вызываю так: Код: java 1. Т.е. класс нужно в 2-х местах указывать... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.05.2014, 11:41 |
|
||
|
Десериализация json в обобщенный класс
|
|||
|---|---|---|---|
|
#18+
Нет, нельзя. Самому класс нужно указывать только в параметре метода. Тип возвращаемого значения IDE может сгенерировать сама. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.05.2014, 13:14 |
|
||
|
Десериализация json в обобщенный класс
|
|||
|---|---|---|---|
|
#18+
avp.mkНет, нельзя. Самому класс нужно указывать только в параметре метода. Тип возвращаемого значения IDE может сгенерировать сама. Ткните ссылкой пожалуйста, почему я не могу сделать так: Код: java 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.05.2014, 20:06 |
|
||
|
Десериализация json в обобщенный класс
|
|||
|---|---|---|---|
|
#18+
Максим Нavp.mkНет, нельзя. Самому класс нужно указывать только в параметре метода. Тип возвращаемого значения IDE может сгенерировать сама. Ткните ссылкой пожалуйста, почему я не могу сделать так: Код: java 1. Потому что: 1. List не extends ISavedObject 2. Type Erasure (параметизированные типы после компилции заменяются на тип Object/нижнюю границу (bound) - у вас это ISavedObject) => Из вашей ф-ии создатся примерно вот такое по смыслу: Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. И еще помойму у вас "архитектура" немного странная...Exception явно надо выше перенаправлять. Или будете в вызывающем методе проверять на null значение, а нафига тогда exception'ы ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.05.2014, 21:57 |
|
||
|
|

start [/forum/topic.php?fid=59&fpage=173&tid=2127137]: |
0ms |
get settings: |
8ms |
get forum list: |
20ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
45ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
34ms |
get tp. blocked users: |
1ms |
| others: | 228ms |
| total: | 353ms |

| 0 / 0 |
