I'm not an expert about IoC and DI (dependency injection), but I guess you have been misled by the fact that IoC uses polymorphism to provide dependencies to a class in a loose-coupled way.
You provide (inject) an object of a class, implementing some interface or superclass, to another object.
But, IoC and polymorphism are very different concepts:
- Polymorphis is one of the fundamentals of OO languages.
- IoC is a design pattern.