Você só tem retorno do método dentro do try; caso alguma exceção for lançada seu método não estará retornando nada, então está errado. Uma boa prática é quando se tem um método com retorno. Sempre retorne na última linha. Se você colocar o seguinte código vai funcionar:
packageutilitarios;importjava.util.Date;publicclassComparadorextendsData{publicStringComparaHora(Stringhora){------->missingreturnstatement(estádandoessamensagem)StringmensagemRetorno="";try{Stringhora1=hora;Stringhora2="00:00:00";Stringhora3="12:00:00";Stringhora4="18:00:00";Dated1=horaformatada.parse(hora1);Dated2=horaformatada.parse(hora2);Dated3=horaformatada.parse(hora3);Dated4=horaformatada.parse(hora4);// DE 00:00:00H às 12:00:00Hif(d1.getTime()>=d2.getTime()&&d1.getTime()<=d3.getTime()){mensagemRetorno="BOM DIA!";}else{// de 12:00:00 às 18:00:00hif(d1.getTime()>d3.getTime()&&d1.getTime()<=d4.getTime())mensagemRetorno="BOA TARDE!";else// de 18:00:01 às 23:59:59mensagemRetorno="BOA NOITE!";}}catch(Exceptione){System.out.println(e);}returnmensagemRetorno;}}
G
geaninha
Muito obrigada pela dica…mas agora sem querer abusar da sua paciência, deu outro erro: como estou trabalhando com herança e usando, portanto “extends” dá a seguinte msg “Ponto de interrupção da classe” nessa parte