1
|
John Milton · 技术社区 · 7 年前 |
![]() |
1
5
我想你上面的声明来自内蒂 Promise 班我认为我的答案应该是可行的,因为你的问题似乎更多的是关于协方差和逆变,而不是关于Netty的API。
这里泛型的目的是使API对其用户更具可塑性。
假设您有三个不同的
请注意
假设现在我们有一个
编译器会将我们的方法声明解释为
基本上就是说
这显然使API更加灵活,例如,我可以添加我之前定义的任何监听器,以便在我的整数承诺得到解决时得到通知:
请注意,我没有被迫为显式类型的未来提供侦听器
嗯,这就是
事实是在Netty
例如,a
正如你所见,
这个概念被称为协方差,它再次被用来使API对其用户更加灵活。 现在,我们可以做出最初的承诺,同时添加以下第二组侦听器:
就在这里。由于协方差和逆变的正确使用,API更加灵活。 |
![]() |
Doua Beri · Netty SMTP代码-服务器端 7 年前 |
![]() |
Abhijit Sarkar · 如何解压缩通量(以及如何编写通量)? 7 年前 |
![]() |
elPsyChris · Vertx Eventbus无法发送节点间 7 年前 |
![]() |
St.Antario · Netty中的I/O线程是什么? 7 年前 |
![]() |
konstantin · Netty NIO:读取收到的消息 7 年前 |