Develop an Elevator class that has three constructors. The constructor without any parameters sets the instance variable max_floor to 10 and passenger_capacity to 5 both of type integer. The second constructor allows for the floor limit (max_floor) to be specified, but the passenger capacity by default is 5. The third constructor allows for the floor limit as well as the passenger capacity to be specified.
When the Elevators are instantiated it is at floor number 1 and there are no passengers on board. Create instance methods to open the door, load specified number of passengers, close the door and select the floor. The Elevator will only operate if it is loaded within capacity and the floor selected is valid and the door is closed. You may only unload passengers when the door is open.
Instantiate four elevators in the main method and simulate its operation. Design a suitable toString method that allows you to monitor all the simulation action( door position, floor number, passenger on board etc.)