If there is an automatic dependency injection, why sould we import the actual class?

Maybe I’m wrong in my assumptions here, but in any single tutorial about angular2/Ionic2 I’ve saw they use to import the class of the service they are trying to inject in any component, service, etc; the same class is used to define the provider. But what happen if I want to use another implementation/class of the service? As I see it, we need to define the class in the provider definition, we all know, but what about the components using this service?, should I go and manually change the import statement in any single file in order to point to the new implementation?. Shouldn’t they use an interface instead?

As I said before, maybe I’m missing something.