gpt4 book ai didi

Java 泛型 PECS

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

我知道PECS是什么意思。

生产者扩展,消费者 super 。

问题是我怎么知道它是消费者还是生产者?

此代码是否也遵循“PECS”

public class Tree<T> {

//List of branches for this tree
private List<Tree<? super T>> branch = new ArrayList<Tree<? super T>>();
public Tree(T t){ this.t = t; }
public void addBranch(Tree< ? super T> src){ branch.add(src); }
public Tree<? extends T> getBranch(int branchNum){
return (Tree<? extends T>) branch.get(branchNum);
}
private T t;
}

最佳答案

您可以使用的一个很好的助记符是想象returns对于 extendsaccepts对于 super .

所以一个Tree<? extends T>阅读 Tree<? returns T> ,这意味着您可以调用 Tree 中的方法返回 T , 但不是接受 T 的方法作为参数类型。

关于Java 泛型 PECS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12197685/

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