@AutoService(Service.class)
public interface Service {
void doSomething();
}
@AutoService(Service.class)
public class ServiceImplA implements Service {
@Override
public void doSomething() {
}
}
@AutoService(Service.class)
public class ServiceImplB implements Service {
@Override
public void doSomething() {
}
}
ServiceLoader<Service> serviceLoader = ServiceLoader.load(Service.class);
for (Service service : serviceLoader) {
}