protected members are accessible by sub class located inside and outside the package whereas default members are only accessed by subclass located in the same package, not accessible outside the package