abstract class vs non abstract class
non-abstract class: cannot: abstract methods can: constructor, instance method, static method, instance block,s tatic block, instance variable, static variable abstract class: can: constructor, instance method, static method, instance block, static block, instance variable, static variable... abstract method: method without implementation, meant to be override (cannot create object, cannot be final,static,private)