0

Hey I have a question about generics on Java.

Basically I have two classes. One is the interface, and the other is the implementation of that interface.

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...
   }

}

What I'm trying to achieve (Failing);

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...
}

It's giving me a syntax error on moveHandsRandomly(rightHands). What i don't understand is, isn't RightHand essentially Hand? Why can't i use this logic?

0 Answers0