嘿,我对Java上的泛型有疑问。
基本上我有两节课。一个是接口,另一个是该接口的实现。
Hand.java:
public interface Hand {
void move(double x, double y, double z, int rotaton);
}
RightHand.java:
public class RightHand implements Hand {
@Override
public void move(double x, double y, double z, int rotaton) {
...Logic...
}
}
我想要实现的目标(失败);
public static void main(String[] args) {
List<RightHand> rightHands = new ArrayList<RightHand>();
...Add to rightHands logic...
moveHandsRandomly(rightHands);
}
public static void moveHandsRandomly(List<Hand> hands) {
...Move Logic...
}
它在moveHandsRandomly(rightHands)上给我一个语法错误。我不明白的是,RightHand本质上是Hand?为什么我不能使用这个逻辑?