public interface MessageService {
void sendMessage(String message);
}
public class EmailService implements MessageService {
public void sendMessage(String message) {
}
}
public class MyBinder implements Binder {
public void configure() {
bind(MessageService.class).to(EmailService.class);
}
}
public class MyApp {
@Inject
private MessageService messageService;
public void run() {
messageService.sendMessage("Hello, Syringe!");
}
public static void main(String[] args) {
Injector injector = new Injector();
MyBinder binder = new MyBinder();
injector.bind(binder);
MyApp app = injector.getInstance(MyApp.class);
app.run();
}
}