If a class implements all the interface methods of interface I without declaring itself to be implemented, is it used as an input to variables of type I?
No. What you are describing is more like duck print .
A, , I?
, :
public class A implements I { }
public class B extends A { }
B I.