Описание тега nested-generics

2 ответа

Почему C# не поддерживает дженерики дженериков (дженерики с параметризованными типами)?

Недавно (возможно, из-за недостатков дизайна) я столкнулся с обычной задачей, когда требовалось собрать коллекцию MyType<T> где T не является фиксированным (т. е. несколько различных экземпляров универсальных шаблонов в одной коллекции). Как э…
1 ответ

Решите, какую реализацию использовать в @Inject

У меня есть GenericCrudController<E> что инкапсулирует экземпляр моего GenericCrudBO<E>, и мой GenericCrudBO<E> инкапсулирует экземпляр моего GenericCrudDAO<E>, Итак, что я хочу сделать, это сделать, например, мой GenericCrud…
19 сен '14 в 11:42
2 ответа

Почему я не могу присвоить этой универсальной переменной?

Я пытаюсь реализовать дерево, так что узлы являются общими: public class BinarySearchTree<U extends BinarySearchTree.Node, T extends Comparable<? super T>> { public U root; ... public class Node { T data; U left; U right; public Node(T d…
12 июл '18 в 05:58
2 ответа

Список записей соответствует как классу, так и интерфейсу?

У меня есть следующие классы и интерфейсы C#: class NativeTool class NativeWidget: NativeTool class NativeGadget: NativeTool // above classes defined by the API I am using. Below classes and interfaces defined by me. interface ITool interface IWidge…
08 апр '14 в 15:16
2 ответа

Не удается скомпилировать коррелированные параметры Java Generics с подстановочными знаками

Следующий небольшой пример Java не будет компилироваться по непонятным причинам: package genericsissue; import java.util.ArrayList; import java.util.List; interface Attribute<V> {} interface ListAttribute extends Attribute<List<?>>…
17 май '13 в 15:47
1 ответ

Может ли Java выводить универсальный тип из класса, определенного поверх универсальных?

Я позаимствовал код из этого другого ответа interface IConverter<TFrom, TTo> { TTo convert(TFrom from); } class IntToStringConverter implements IConverter<Integer, String> { public String convert(Integer from) { return "This is a string:…
28 янв '15 в 15:06
2 ответа

Как наследовать универсальный класс от вложенного универсального класса в C#

Я делал свою домашнюю работу и застрял в некоторых проблемах с дженериками и наследованием. У меня есть общий класс красно-черного дерева, так как это красно-черное дерево, его ключи должны быть сопоставимы, поэтому public class RedBlackTree<T&gt…
07 апр '18 в 02:42
0 ответов

Параметр общего типа класса

Предпосылки: Существует сторонняя библиотека, предоставляющая следующий код (НЕ может быть изменен): /** * @param <T> result type of the request * @param <U> exception type of the request **/ public interface Request<T, U extends Thir…
13 дек '16 в 16:37
1 ответ

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

Я подробно прокомментировал код ниже. Я чувствую, что гораздо проще понять эту проблему, чем пытаться объяснить ее только с помощью миров. abstract class BaseEvent<REQUEST_PAYLOAD, RESPONSE_PAYLOAD> { constructor(public requestPayload: REQUEST…
1 ответ

Вложенные универсальные типы интерфейсов

Учитывая следующий интерфейс: type A<'t> = abstract Scratch: 't Как просто создать такой интерфейс: type X<A<'t>> = abstract f: A<'t> Я также попробовал это: type X<'t,'y when 'y:A<'t>> = abstract f: 'y и это: typ…
22 май '18 в 07:50
2 ответа

Свести IEnumerable<IEnumerable <>>; понимание дженериков

Я написал этот метод расширения (который компилируется): public static IEnumerable&lt;J&gt; Flatten&lt;T, J&gt;(this IEnumerable&lt;T&gt; @this) where T : IEnumerable&lt;J&gt; { foreach (T t in @this) foreach (J j in t) yield return j; } Приведенный…
25 фев '12 в 02:02
2 ответа

Есть ли какой-нибудь способ получить класс для Java или создать экземпляр типа с двойным родом?

Так сказать, у меня есть: public class Foo&lt;T&gt; { // Some stuff } public interface Factory&lt;T&gt; { T newInstance(); Class&lt;T&gt; getKlass(); } И я хочу сделать реализацию Factory для сборки Foo: public class FooFactory&lt;T&gt; implements F…
19 ноя '12 в 12:37
4 ответа

C# foreach на IEnumerable<IList <object >> компилируется, но не должен

У меня есть следующий код: IEnumerable&lt;IList&lt;MyClass&gt;&gt; myData = //...getMyData foreach (MyClass o in myData) { // do something } Он компилируется, запускается и, очевидно, я получаю System.InvalidCastException,Почему компилятор не жалует…
30 ноя '18 в 14:18
2 ответа

Есть ли способ создать вложенный открытый универсальный тип?

В C# легко создать открытый универсальный тип, typeof(IEnumerable&lt;&gt;), Есть ли способ создать тип, который содержит открытый универсальный? Следующее не работает: typeof(IEnumerable&lt;IFoo&lt;&gt;&gt;),
20 окт '16 в 01:38
3 ответа

Возврат или наследование универсального объекта, содержащего вложенный класс

Я замечаю очень странное поведение при использовании макета класса, который выглядит следующим образом: // Contents of assembly A: public class MyParentClass { public class NestedClass { } } // Contents of assembly B: public class AnotherClass : Lis…
23 ноя '10 в 10:04
5 ответов

Java: вложенные дженерики?

Может ли Java вкладывать дженерики? Следующее дает мне ошибку в Eclipse: ArrayList&lt;ArrayList&lt;Integer&gt;&gt; numSetSet = ArrayList&lt;ArrayList&lt;Integer&gt;&gt;(); Ошибка: Syntax error on token "(", Expression expected after this token
04 ноя '09 в 03:17
3 ответа

Как ограничить вложенные универсальные типы универсального метода

Я пытаюсь создать метод, который возвращает данные из базы данных на основе указанного универсального типа. Интерфейс: (это определение компилируется) public interface IOrderPosition&lt;TOrder, TArticle, TOrderPosition&gt; where TOrder : IOrder wher…
1 ответ

Как создать Необязательный<Class <? >> в JCodeModel?

Я хочу создать JCodeModel для метода ниже: private static Optional&lt;Class&lt;?&gt;&gt; getTypeOfId(String fieldName) { switch (fieldName.toLowerCase()) { case "IDFORCLASSX": { return Optional.of(X.class); } default: { return Optional.empty(); } } …
1 ответ

Расширение класса дженериков с помощью вложенных дженериков

В машинописи есть способ расширить класс таким образом: class ChildClass&lt;Wrapper&lt;A&gt;&gt; extends SuperClass&lt;A&gt; Это не работает, но идея заключалась бы в том, чтобы обернуть универсальный тип в известную конструкцию. Вот документы: http…
22 ноя '17 в 09:59
2 ответа

Как сохранить обобщенный тип вложенных обобщенных объектов с токенами классов

Стандартным способом в Java для обхода стирания типов является передача токена класса в конструктор. Например, мы можем определить общий класс свойств следующим образом: class Prop&lt;T&gt; { public Prop(Class&lt;T&gt; type) { this.type = type; } Cl…
14 май '16 в 19:37