패키지에 표시됩니다. 기본값입니다. 수정자가 필요하지 않습니다.
수업 만 볼 수 있습니다 ( private ).
세계에 공개 ( 공개 ).
패키지 및 모든 하위 클래스에 표시됩니다 ( protected ).
변수와 메소드는 호출 된 수정 자없이 선언 될 수 있습니다. 기본 예 :
String name = "john";
public int age(){
return age;
}
개인 액세스 수정 자-개인 :
private으로 선언 된 메서드, 변수 및 생성자는 선언 된 클래스 자체 내에서만 액세스 할 수 있습니다. 개인용 액세스 수정자는 가장 제한적인 액세스 수준입니다. 클래스 및 인터페이스는 개인용이 될 수 없습니다.
public getter 메소드가 클래스에있는 경우 private으로 선언 된 변수는 클래스 외부에서 액세스 할 수 있습니다.
전용 수정자를 사용하는 것이 객체가 자신을 캡슐화하고 외부 세계에서 데이터를 숨기는 주요 방법입니다.
예 :
Public class Details{
private String name;
public void setName(String n){
this.name = n;
}
public String getName(){
return this.name;
}
}
공개 액세스 수정 자-공개 :
public으로 선언 된 클래스, 메소드, 생성자, 인터페이스 등은 다른 클래스에서 액세스 할 수 있습니다. 따라서 공개 클래스 내에 선언 된 필드, 메서드, 블록은 Java 유니버스에 속한 모든 클래스에서 액세스 할 수 있습니다.
그러나 액세스하려는 공개 클래스가 다른 패키지에 있으면 공개 클래스를 계속 가져와야합니다.
클래스 상속으로 인해 클래스의 모든 공용 메소드 및 변수는 서브 클래스에 의해 상속됩니다.
예:
public void cal(){
}
보호 된 액세스 수정 자-보호 :
수퍼 클래스에서 보호 된 것으로 선언 된 변수, 메소드 및 생성자는 다른 패키지의 서브 클래스 또는 보호 된 멤버의 클래스 패키지 내의 클래스에 의해서만 액세스 할 수 있습니다.
보호 된 액세스 수정자는 클래스 및 인터페이스에 적용 할 수 없습니다. 메소드, 필드는 보호 된 것으로 선언 될 수 있지만 인터페이스의 메소드 및 필드는 보호 된 것으로 선언 될 수 없습니다.
보호 된 액세스는 서브 클래스가 헬퍼 메소드 또는 변수를 사용할 수있는 기회를 제공하면서 관련이없는 클래스가이를 사용하지 못하게합니다.
class Van{
protected boolean speed(){
}
}
class Car{
boolean speed(){
}
}
private
패키지 내의 다른 클래스에서 숨 깁니다.public
패키지 외부의 클래스에 노출됩니다. 서브 클래스로만 제한된protected
버전입니다public
.