Boa tarde,
Estava estudando sobre Enums e me deparei com uma exception. Error:(4, 31) java: illegal forward reference.
No caso eu criei um enum de estado de venda de item, onde o mesmo possui um atributo para o proximo estado.
O construtor do enum recebe o estado e indica o próximo porém ao rodar o programa o mesmo lança a excessão acima.
Gostaria de saber se não é possível passar um atributo do próprio enum em seu construtor.
package br.com.renato.enums;
public enum EstadoVendaItem {
DISPONIVEL(RESERVADO),
RESERVADO(ADIQUIRIDO),
ADIQUIRIDO(EM_TRANSPORTE),
EM_TRANSPORTE(ENTREGUE),
ENTREGUE(null);
private EstadoVendaItem proximoEstado;
private EstadoVendaItem(EstadoVendaItem proximoEstado) {
this.proximoEstado = proximoEstado;
}
public EstadoVendaItem getProximoEstado() {
return proximoEstado;
}
}