Injeção de Dependências c/ Spring MVC - Interface x Construtor

Bem, eu tô començando a mexer com Spring MVC e fui ler sobre IoC e DI. A dúvida surgiu porque há 3 métodos de injetar dependêcias:

  1. Por meio de construtor
  2. Por meio de interface
  3. Por meio de propriedade

Seguinte, eu tava vendo alguns exemplos e me deparei com alguns que ele passa o objeto como parametro da classe construtor, e alguns que usam interface. Agora a dúvida… quando eu faço a DI via interface, eu ainda preciso o objeto no construtor como parâmetro?

/* Criação da interface */
public interface ObjDAO{
    public void salvar(Object obj);
}

@Repository
public class ObjDAOImpl implements ObjDAO{
    private ObjDAOImpl(){}

    @Override
    public void salvar(Object obj){
        // Lógica pra persistir dados
    }
}

@Controller
public class ObjController{
    /* Aqui tô usando a interface */
    private ObjDAO objDao;

   /* E aqui, passando a instância da interface no construtor 
      Eu não poderia usaria a annotation lá no private ObjDAO objDao ?  É essa a dúvida*/
    @Autowired
    private  ObjController(ObjDAO objDao){
        this.objDao = objDao;
    }

    /*  restante dos métodos */
}