Android Library Dagger 2: Dependency Injection in Applications Create @Module Class and @Singleton annotation for Object


import javax.inject.Singleton;
import dagger.Module;
import dagger.Provides;

public class VehicleModule {
    @Provides @Singleton
    Motor provideMotor(){
        return new Motor();
    @Provides @Singleton
    Vehicle provideVehicle(){
        return new Vehicle(new Motor());

Every provider (or method) must have the @Provides annotation and the class must have the @Module annotation. The @Singleton annotation indicates that there will be only one instance of the object.