问题标签 [nested-generics]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
5 回答
1882 浏览

java - Java:嵌套泛型?

Java可以嵌套泛型吗?以下在 Eclipse 中给了我一个错误:

错误是:

Syntax error on token "(", Expression expected after this token

0 投票
1 回答
184 浏览

java - 内部类的通用可见性?

我有一个类似于我在下面粘贴的代码片段:

在我的“TheCache”类中,我想将泛型类型限制为特定类型,这很好,但是当我将“值”作为容器获取时,它不知何故没有输入,因为我无法执行 doSomething 方法。为什么?

0 投票
1 回答
729 浏览

delphi - 传递对 TObjectDictionary 的引用.TValueEnumerator

我正在尝试使用 Delphi 2010 的 TObjectDictionary 泛型。

我想传递Values该泛型类的属性的枚举器,而编译器似乎不想让我...示例:

这无法编译并出现错误:

似乎编译器没有正确解析子类型......

有人有想法么?

N@

0 投票
2 回答
1547 浏览

java - 泛型树,自有界泛型

我要为我的一个项目添加通用性。我喜欢泛型,因为这使我的代码更加健壮、自我记录并消除了所有那些丑陋的演员表。

但是,我遇到了一个棘手的案例,并且在尝试为我的一个结构表达“递归”约束时遇到了一些问题。

这基本上是某种“通用”树,带有双链接(到子节点和父节点)。我最大程度地简化了课程以显示问题:

问题在于指令:child.setParent(this)

Java给出以下错误:

绑定不匹配:ChildClass 类型的方法 setParent(?) 不适用于
参数 (GenericTree)。通配符参数 ? 没有下限,实际上可能比参数 GenericTree 更严格

我想要的是能够表达类似的东西:

要说子类的父类应该是它自己...

我看过一些关于自边界泛型的文章,但我不知道如何在这种情况下应用它。

任何帮助,将不胜感激。

0 投票
4 回答
438 浏览

c# - C# 中的嵌套泛型是什么意思?

一个基本的问题,但似乎难倒我,尽管如此。

给定一个“嵌套泛型”:

这是否说明 IEnumerable 可以具有本身是 KeyValuePair 的泛型类型?

谢谢,

斯科特

0 投票
3 回答
502 浏览

c# - 请帮助我在 C# 中使用泛型时理解多态性

我在理解使用泛型时多态性如何工作时遇到问题。例如,我定义了以下程序:

然后我可以这样做,效果很好:

我有许多实现 MyInterface 的类。我想写一个可以接受所有 MyContainer 对象的方法:

现在,我想调用这个方法。

那没有用。当然,因为 MyClass 实现了 IMyInterface,我应该可以直接转换它吗?

那也没有用。我绝对可以将普通的 MyClass 转换为 IMyInterface:

所以,至少我没有完全误解这一点。我不确定如何编写一个接受符合相同接口的通用类集合的方法。

如果需要,我有一个完全解决这个问题的计划,但我真的更愿意正确地完成它。

先感谢您。

0 投票
3 回答
123 浏览

c# - 返回或继承包含嵌套类的泛型

在使用如下所示的类布局时,我注意到一些非常奇怪的行为:

我可以将程序集 A 添加为程序集 B 的依赖项。此示例将在没有任何错误消息的情况下编译,但是当涉及到,例如,加载程序集 B 作为单元测试的参考时,我会在需要时收到此错误消息编译单元测试:

无法加载文件或程序集“AssemblyB,Version=1.0.0.0,Culture=neutral,PublicKeyToken=null”或其依赖项之一。该系统找不到指定的文件。

此代码生成的程序集确实有效,我可以使用 Redgate Reflector 运行生成的 DLL 并按预期查看我的代码,但单元测试拒绝加载它。

我几乎肯定这个问题与我正在调用另一个程序集中的嵌套类这一事实有关,无论如何我可能最终会重构这个设计,但我真的很想知道为什么这不起作用预期的。如果以这种方式使用类有问题,我希望编译器会抛出异常。

感谢您的时间。

0 投票
4 回答
283 浏览

java - 如何让这个嵌套泛型参数系统工作?

所以我试图让一个相当复杂的系统工作。这是我正在尝试的基础知识。

规则:

处理程序:

并将它们捆绑在一起:

到目前为止,我已经尝试了不同参数(通配符、受限等)的各种组合,但还没有在没有与类型相关的错误的情况下进行编译。欢迎任何见解、解决方案或替代方法。

0 投票
2 回答
106 浏览

java - 如何在eclipse中指定嵌套泛型

我想指定这种类型:

但 Eclipse 拒绝这样做。我不确定它是 Eclipse 还是 Java 解析器。

我在学习时尝试编写自己的 java 解析器时遇到了类似的问题:“>>”被视为移位运算符。

这里发生了什么?

编辑:java适用于此。

0 投票
3 回答
480 浏览

java - 如何使用有效的泛型声明 Class.class

注意:纯粹出于好奇,而不是针对任何实际用例。

我想知道是否有办法Class Class用有效的类型参数声明对象:

如果ClassClass<?>是可互换的,为什么是Class<Class>Class<Class<?>>不是?

编辑:这个问题可以概括为嵌套原始类型参数的问题。例如:

EDIT2:我应该稍微改一下这个问题:我知道

是有效的,但我想知道为什么Class<Class>不一样Class<Class<?>>