Java has four different access specifiers: public private package and protected.
private : The most restrictive of the access specifiers is private. If a variable [or a method] is declared private then it can only be accessed by methods in that class.
public : The least restrictive of the access specifiers is public. If a method has public in front of it then any object of that class can be told to perform that action.
package : Every class that is in the same package has access to the fields and methods in your class.
protected : If you have a variable or method in your class that you don't want clients of your class directly accessing declare it protected.
I Think Classes in the same package are said to be friendly..It is not Acess Specifier