[JAVA] Problema com lógica em programa "Relógio" - Exibir uma mensagem em certos intervalos

Olá !
Pessoal, estou fazendo um exercício para criar um “relógio” com POO, mas parei nessa parte; onde tenho que exibir uma mensagem em certos horários do dia(no console). Não consigo pensar em uma lógica para fazer isso funcionar, as que eu tentei usar até agora não mostravam a mensagem correta ou imprimia null.

/*
* Saudacoes a implementar
* Bom dia! -> Após a meia noite até 8:59:59 da manhã
* Quase na hora de comer! -> a partir das 9:00:00 da manhã até 12:30:00
* Comer! -> Após 12:30:00 até 13:30:00
* Novamente com fome... -> Para todos os outros casos 
*/

public class Saudacao{
	private String saudar;

	public String saudar(Relogio r){
		int hora = r.getHora();
		int minuto = r.getMinuto();
		//int horaMin = (r.getHora() & r.getMinuto());
		
		if (hora > 0 && hora < 9) {
			saudar = "Bom dia!";
		}		
		if(hora >= 9 && (hora <= 12 && minuto < 30)) {
			saudar = "Quase na hora de comer!";
		}
		if((hora >= 12 && minuto >30) && (hora <= 13 && minuto < 30)) {
			saudar = "Comer";
		} else {
			saudar = "Novamente com fome...";
		}
		return saudar;

		/*saudar = (r.getHora() < 9 ? "Bom dia!" : saudar);
    	        saudar = (r.getHora() <= 12 && r.getMinuto() < 30 ? "Quase na hora de comer!" : saudar);
    	        saudar = (r.getHora() >= 12 && r.getMinuto() >= 30 ? "Comer!" : saudar);
    	       saudar = (r.getHora() >= 13 && r.getMinuto() >= 30 ? "Novamente com fome..." : saudar);*/
           
    }
}

Se eu estivesse mexendo só com “hora” seria mais fácil (como na primeira saudação), mas em casos como esse penúltimo - “Após 12:30:00 até 13:30:00” -, é preciso usar os minutos também. Queria saber se é possível fazer uma lógica + ou - assim para pegar o minuto da hora certa:

"SE HORA for maior ou igual a J quando seu MINUTO for menor que K
E HORAfor menor ou igual a L quando seu MINUTO for menor que M "

Vou deixar as outras classes aqui:

Relogio

/*
* Excecoes:
* hora fora do intervalo permitido
* minuto fora do intervalo permitido
* segundo fora do intervalo permitido
*
* Metodos (regras)
* setHora/Minuto/Segundo -> validar
* getHora() -> retorna a hora definida no formato: 0-12(AM/PM) se formato12 == true // 0-24 se formato12 == false
* getTurno() -> retorno a String AM ou PM dependendo da hora
* isFormato12() = getFormato12()
* 
*/

public class Relogio{
    private int hora, minuto, segundo;
    private boolean formato12 = false;

    public void setHora(int hora){
        if(hora < 0 || hora >= 24) {
			throw new IllegalArgumentException("hora fora do intervalo permitido");
		}
		
		this.hora = hora;
    }
    
    public void setMinuto(int minuto){
        if(minuto < 0 || minuto >= 60) {
			throw new IllegalArgumentException("minuto fora do intervalo permitido");
		}
		
		this.minuto = minuto;
    }
    public void setSegundo(int segundo){
        if(segundo < 0 || segundo >= 60)
            throw new IllegalArgumentException("segundo fora do intervalo permitido");
            
        this.segundo = segundo;
    }
    public int getHora(){
        if(formato12 == true){
            hora = (hora == 0 ? 12 : hora);
            hora = (hora > 12 ? hora -12 : hora);
            return hora;
        } else
            return hora;
    }
    public int getMinuto(){
        return minuto;
    }
    public int getSegundo(){
        return segundo;
    }
    public String getTurno(){
        String turno;
        turno = (hora > 12 ? "PM" : "AM");
        return turno;
    }
    public void setFormato12(boolean f){
        this.formato12 = f;
    }
    public boolean isFormato12(){
        return formato12;
    }
   
}

Main

public class Main {

	public static void main(String[] args) {
		System.out.println("Tic tac");
        
        Relogio relogio = new Relogio();
        Saudacao saudacao = new Saudacao();
        
        relogio.setFormato12(true);
        relogio.setHora(8);
        relogio.setMinuto(29);
        relogio.setSegundo(29);
        
        String saudar = saudacao.saudar(relogio);
        
        System.out.printf("%s A hora agora eh %d:%d:%d %s", saudar, relogio.getHora(),relogio.getMinuto(),relogio.getSegundo(), relogio.getTurno());

	}

}

Sou bem iniciante em java/programação em geral, se alguem puder me dar uma luz agradeço ^^.