https://imkavindusandaruwan.medium.com/inheritance-in-object-oriented-programming-with-java-5ce04a8cc7ee