object oriented – I want java coding OOP mean I want code using Classes, Encapsulation, Constructors, Inheritance and Array list

The second level of training contains practical work on programming using Java, and ‎focuses on implementing basic algorithms in code using IDE, your training should go ‎as follows:‎
‎1.‎ To start the technical part, you should start by showing a suitable IDE for your ‎trainees
‎2.‎ Then, create a discussion with the attendees to criticize development using IDEs ‎in comparison with not using one.‎

Now, you’ll give them practical training by giving them a small programming project, ‎the following is the project description: ‎
Create a library system with the following specifications: the library has a name, number ‎of employees, manager name, and location. Also, the library consists of five sections: ‎human studies, science, mathematics, information technology, and history. Every ‎section contains books, every book has a serial number (number), title, number of ‎pages, author name, and publisher name. Identify and Implement all the needed ‎classes according to the mentioned requirements.‎
After you make sure all the project details are clear, you need to help your attendees to ‎implement a sorting algorithm to sort books (Ascending) in every section, implement the ‎algorithm in two ways, sort by serial number, and sort by book title. ‎

public static library(){

**package library;

public static ‎human studies {