An example of applying OOP principles in code.
This program reads from an access database, student IDs, names, and grades and displays them for the user. The user can then add, update, and delete students and grades from the interface. The final edits are not saved until the application is safely closed and the user confirms the edits.
This particular code shows inheritance through the use of a shared student class to represent a regular student and the base for a dorm student. The properties are also encapsulated through the mutators and accessors to protect the raw data.
This code also implements many custom exceptions along-side parameterized insert, update, and delete statements from database changes.