Olá, Kennedy, como vai?
O seu código cumpre bem o objetivo de armazenar as informações do livro e realizar a validação da categoria utilizando estruturas condicionais. Você aplicou corretamente os tipos de dados para cada atributo, como String para textos e char para a categoria única.
Para tornar o código ainda mais organizado quando existem muitas condições fixas, você pode utilizar o switch case em vez de vários blocos if else. Essa estrutura facilita a leitura e manutenção do programa.
Parabéns pelo empenho em resolver a atividade e por compartilhar sua solução. Continue praticando e evoluindo seus estudos. O fórum está à disposição.
Conte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!