Gostaria de saber se meu método está certo, fiz um enum
publicenumSituacao{INVENTARIO,TOMBADO,BAIXADO}
Chamei ele aqui, nessa classe para validar os seguintes métodos, colocarEmInventario , tombar , baixar
/** * colocarEmInventario (muda a situação do bem de "tombado" para "em * inventário"), tombar (inicializa a situação do bem para "tombado") e * baixar (muda a situação do bem de "tombado" para em "baixa"). * */publicvoidcolocarEmInventario(SituacaotipoSituacao){if(Situacao==tipoSituacao.TOMBADO){tipoSituacao=tipoSituacao.INVENTARIO;}else{System.err.println("Não está tombado, operação invalida!");}}publicvoidtombar(SituacaotipoSituacao){tipoSituacao=tipoSituacao.TOMBADO;}publicvoidbaixar(SituacaotipoSituacao){if(tipoSituacao==tipoSituacao.TOMBADO){tipoSituacao=Situacao.BAIXADO;}else{System.err.println("Não está tombado, operação invalida!");}}}
Acredito que nenhum dos métodos faça o que você pensa que eles fazem.
Você chegou a rodar o código e ver o resultado?
O método colocarEmInventario não deve nem compilar.
Você já trabalhou com teste unitário?
Recomendo começar a escrever testes para suas classes e testar se o comportamento delas é certo ou errado.
Aliás, se postar um teste com o que espera que sua classe faça e o código atual, fica muito mais simples te indicar o que você precisa fazer.
ViniGodoy
Tem coisa invertida aí, você referencia um valor de um enum pela classe:
/** * colocarEmInventario (muda a situação do bem de "tombado" para "em * inventário"), tombar (inicializa a situação do bem para "tombado") e * baixar (muda a situação do bem de "tombado" para em "baixa"). * */publicvoidcolocarEmInventario(SituacaotipoSituacao){if(tipoSituacao==Situacao.TOMBADO){tipoSituacao=Situacao.INVENTARIO;}else{System.err.println("Não está tombado, operação invalida!");}}publicvoidtombar(SituacaotipoSituacao){tipoSituacao=Situacao.TOMBADO;}publicvoidbaixar(SituacaotipoSituacao){if(tipoSituacao==Situacao.TOMBADO){tipoSituacao=Situacao.BAIXADO;}else{System.err.println("Não está tombado, operação invalida!");}}}
juninhoall
ViniGodoy:
Tem coisa invertida aí, você referencia um valor de um enum pela classe:
/** * colocarEmInventario (muda a situação do bem de "tombado" para "em * inventário"), tombar (inicializa a situação do bem para "tombado") e * baixar (muda a situação do bem de "tombado" para em "baixa"). * */publicvoidcolocarEmInventario(SituacaotipoSituacao){if(tipoSituacao==Situacao.TOMBADO){tipoSituacao=Situacao.INVENTARIO;}else{System.err.println("Não está tombado, operação invalida!");}}publicvoidtombar(SituacaotipoSituacao){tipoSituacao=Situacao.TOMBADO;}publicvoidbaixar(SituacaotipoSituacao){if(tipoSituacao==Situacao.TOMBADO){tipoSituacao=Situacao.BAIXADO;}else{System.err.println("Não está tombado, operação invalida!");}}}
obrigado viny por responder, estou fazendo de outra forma, mas com enums ainda, logo que terminar meu projeto de web service posto para você ver, aproveitando esse tópico peço que verifique sua MP daqui alguns minutos