When in interface you declare a method that takes an interface as an argument like
public interface testInterface{
public void TestMethod(SomeInterface in);
}
When you get to implement this method in a class that implements this interface, does the argument need to be again (SomeInterface in)(most general form) or can it be just an interface that implements SomeInterface? If the first holds, do I need to cast or what?
Update: I mean if the method signature in the implementing class must have (SomeInterface in) as a parameter or if it can be a specific class implementing (SomeInterface in)