Library class Project
Empty Constructor

Is a book with no name, author, or title a book? You should not include empty, overloaded constructors unless you know valid defaults. Empty strings are not valid defaults for titles/authors/descriptions.

Data Types

You could use a Time type for opening hours and an Address type for location. This increases code readability, clarity of your api, and type safety...

private Address location;
private Time openingHours;


Method Names

Your library print functions don't print anything, but rather return values! If you have a method printAddress(), I would suspect that the address is printed to the console. Instead, it would make more sense to call this method getAddress().

These are a few quick things I noticed. I'll try to complete this answer later.