What is the difference between public, private, protected and default Access Specifiers? or What are different types of access modifiers?