Dúvida no toString

Gostaria de saber pq está dando erro.
O erro está em negrito.

public class Aluno {
    private String matricula;
    String situacao;
    private double nota1;
    private double nota2;
    private double nota3;
    private double nota4;
    
    public double ObterMedia(){
        double obtermedia=(getNota1()+getNota2()+getNota3()+getNota4())/4;
        return (obtermedia);                       
    }
    /** Creates a new instance of Aluno */
    public Aluno() {
    }
    public String toString () {
		StringBuffer resultado=new StringBuffer();
                [b]if (obtermedia()<=3)[/b]{
                    situacao="REPROVADO";
                }
                [b]else if (obtermedia()<=6.9)[/b]{
                    situacao="PROVA FINAL";
                }
                else {
                    situacao="APROVADO";
                }
                resultado.append(situacao);
                return resultado.toString();
    }
"gets e sets"
}

o nome do metodo ta errado!! o java é case-sentive!! A != de a

Amigo olhando rapidamente seu código, onde está em negrito (teoricamente… hehe - a formataão nao entrou) o java é case sensitive, ou seja se o seu método chamar ObterMedia() (que não é legal em java, seria mais interessate usar obterMedia() ou getMedia()) você deve chamá-lo da mesma forma.

Então corriga o seu código usando:

public double getMedia() {

}

e no seu toString() faça:
if (getMedia() <= 3) {

Abraços.