gpt4 book ai didi

java - 为什么 netty Promise 监听器签名 future 的返回类型是

转载 作者:搜寻专家 更新时间:2023-11-01 02:42:35 24 4
gpt4 key购买 nike

方法的签名addListener对于 io.netty.util.concurrent.Promise<V>

Promise<V> addListener(GenericFutureListener<? extends Future<? super V>> listener)

请解释为什么参数不是 GenericFutureListener<? extends Future<? extends V>> 类型因为 promise 的结果应该是 V 似乎是有道理的或其子类,但不是其父类(super class)。

但是为什么Future的返回类型是<? super V>

最佳答案

我们这里需要的是至少可以听V 的东西。它可能能够收听更多,但如果它只能收听 V 的子类,那是不够的。

例如,对于类链 Animal -> Mammal -> Dog,如果我想为MammalAnimal 的 Listener 可以,但是 Dog 的 Listener 不行,因为我的 Mammal 也可以是 Cat

关于java - 为什么 netty Promise 监听器签名 future 的返回类型是 <?超V>,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30367288/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com