A Java console application that models the core operations of a small library. The project was developed as a course assignment to practice object-oriented programming, array-based data structures, validation, and transaction tracking.
- Add books and manage multiple copies
- Register users with basic input validation
- Borrow and return books
- Limit each user to three active loans
- Prevent unavailable books from being borrowed
- Record and display borrow/return transactions
- Expand internal arrays as the collection grows
- Java 23
- NetBeans / Ant project structure
- Java time API for transaction dates
Requirements: JDK 23.
mkdir -p out
find src -name "*.java" -print0 | xargs -0 javac -d out
java -cp out LibraryManagementSystem.LibraryManagementSystemLibrary: catalog, shelves, users, and transaction coordinationBook: title, author, and copy availabilityUser: borrowing limit and active loansTransaction: borrow/return historyLibraryManagementSystem: command-line menu
The current version stores data in memory and is intended as an educational object-oriented programming project. Database persistence and a graphical interface are outside its current scope.
No open-source license has been assigned to this repository.