Q:

access modifiers in java

In Java, access specifiers are the keywords which are used to define 
the access scope of the method, class, or a variable. 
  In Java, there are four access specifiers.
  
  * Public: The classes, methods, or variables which are defined as public, 
  can be accessed by any class or method.
  * Protected: Protected can be accessed by the class of the same package, 
or by the sub-class of this class, or within the same class.
  * Default: Default are accessible within the package only. 
    By default, all the classes, methods, and variables are of default scope.
  * Private: The private class, methods, or variables defined as private 
    can be accessed within the class only
0
class Person {
  protected String fname = "John";
  protected String lname = "Doe";
  protected String email = "[email protected]";
  protected int age = 24;
}

class Student extends Person {
  private int graduationYear = 2018;
  public static void main(String[] args) {
    Student myObj = new Student();
    System.out.println("Name: " + myObj.fname + " " + myObj.lname);
    System.out.println("Email: " + myObj.email);
    System.out.println("Age: " + myObj.age);
    System.out.println("Graduation Year: " + myObj.graduationYear);
  }
}
1
Example of private access modifier:

class Demo
{
   private void display()
   {
      System.out.println("Hello world java");
   }
}
public class PrivateAccessModifierExample
{
   public static void main(String[] args)
   {
      Demo obj = new Demo();
      System.out.println(obj.display());
   }
}
1
For top level class only two access modifiers are allowed. 
public and default. If a class is declared as public it is visible everywhere.
If a class is declared default it is visible only in same package.
If we try to give private and protected as access modifier to class 
we get the below compilation error.
Illegal Modifier for the class only public,abstract and final are permitted.
0

New to Communities?

Join the community