Antes de tudo, instale uma IDE(Integrated Development Enviroment) em seu computador, recomendo o NetBeans.
Após isso, crie um projeto de aplicação. Pelo que você escreveu não é necessário interface gráfica com o usuário.
Logo depois, modele no papel mesmo, o mini-mundo que você quer desenvolver, no caso, o mini-mundo de uma biblioteca.
Nele, você terá, provavelmente, “clientes” da biblioteca, que podem ser do tipo aluno, professor, etc. Aí está um exemplo de herança, onde provavelmente a classe base(cliente) pode ser abstrata.
No acervo, você também poderá modelar herança, através de uma classe ItemDeAcervo, por exemplo, e as generalizações, como Livro, Periódico, CD, DVD, etc.
Um empréstimo pode ser visto como uma associação entre um cliente com um item do acervo. Deve possuir um início e um fim. Você pode modelar diferentes tipos de empréstimo também através de herança e aqui pode vir a usar polimorfismo, onde a classe abstrata Emprestimo pode definir um método abstrato para a realização do empréstimo.
Para compreender mais sobre os conceitos iniciais de desenvolvimento orientado a objetos, recomendo o bem-conhecido livro do Deitel, a linguagem não vai fazer muita diferença, mas facilitará para você buscar o livro correspondente a linguagem que você utilizará para desenvolver seu exercício.
No google também tem muita coisa sobre, pesquise.
Espero ter ajudado, boa sorte.