Depends on what you want to tie. If you bind Base to A ( bind(Base.class).to(A.class) ), then yes, you need a second constructor and @Inject, but the one on Base is not. If you plan to build Base as well, you will need @Inject .
As for calling super() , it needs it (this has nothing to do with Guice) if you only have one constructor with IConfig. But nothing prevents you from deleting it if you don't need to enter IConfig in Base .
source share