I see many methods that specify an interface as return value. Is my thought true that it means: my method can return every class type that inherits from that interface? if n
Yes, that method might return an object of any type that implements that interface.
But, to use the non-interface members of a particular type, you'll need to cast it to that type.