questions/TODOs for access-control, inheritance, inner-classes, Interface, Polymorphism in java