Java의 액세스 수정 자 : 알아야 할 모든 것



이 기사는 Java의 액세스 수정자가 무엇인지 이해하고 Public, private, protected 및 default와 같은 다양한 유형에 대해 배우는 데 도움이됩니다.

Java의 액세스 수정자는 클래스, 변수 메소드 및 생성자에 대한 액세스 수준을 지정하는 데 사용됩니다.그것은 가치를 업데이트하는 데 도움이 . 그들은 또한 가시성 편집. 이 블로그의 매체를 통해 액세스 수정 자의 중요성을 이해하도록 돕겠습니다. .

다음 순서로 주제를 다룰 것입니다.





첫 번째 주제부터 시작하겠습니다.

액세스 수정 자란 무엇입니까?



당신은 우연히 공공의 , 은밀한보호 연습하는 동안 키워드 ,이를 액세스 수정 자라고합니다.이름에서 알 수 있듯이 Java의 Access Modifiers는 클래스, 생성자, 변수, 메소드 또는 데이터 멤버의 범위를 제한하는 데 도움이됩니다.

tostring 메소드 작성 방법

액세스 수정자는 클래스, 생성자에 대해 별도로 지정할 수 있습니다.,필드 및 방법. 그들은 또한 자바 액세스 지정자 이지만 올바른 이름은 자바 액세스 수정 자 .

이제 Java에서 다양한 유형의 Access Modifier를 자세히 살펴 보겠습니다.



액세스 수정 자 유형

에 4 개의 액세스 수정 자 키워드가 있습니다. 그리고 그들은:

  • 기본 액세스 수정 자
  • 개인 액세스 수정 자
  • 공개 액세스 수정 자
  • 보호 액세스 수정 자

각각에 대해 자세히 알아 보겠습니다.

기본 액세스 수정 자

특정 클래스, 메소드 또는 데이터 멤버에 대한 액세스 수정자가 지정되지 않은 경우 기본 액세스 편집.

데이트 멤버, 또는 진입 수정자를 사용하여 선언되지 않은 메서드는 유사한 번들 내에서만 액세스 할 수있는 기본 수정자를 갖습니다. 그것클래스, 필드, 메서드 등에 대한 액세스 한정자를 명시 적으로 선언하지 않음을 의미합니다.

예:

package p1 // Class Course에 기본 액세스 수정 자 class Course {void display () {System.out.println ( 'Hello World!')}}

다음으로, 다음 유형 인 개인 액세스 수정 자로 이동하겠습니다.

개인 액세스 수정 자

  • private로 선언 된 메서드 또는 데이터 멤버는 선언 된 클래스 내에서만 액세스 할 수 있습니다.
  • 최상위 클래스 또는 인터페이스는 다음과 같은 사실을 고려하여 비공개로 선언 할 수 없습니다.
    • 개인은“ 둘러싼 클래스 안에서만 볼 수 있습니다. '.
    • 보호는“ 제이 둘러싸는 클래스와 모든 하위 클래스에서 눈에 띄게 '.
  • 수업에...에개인 생성자 그런 다음 클래스 외부에서 해당 클래스의 개체를 만들 수 없습니다.
  • 클래스는 개인 액세스 수정 자 .
  • private access modifier로 클래스를 표시하는 것은 다른 클래스가 접근 할 수 없음을 의미합니다. 이것은 일반적으로 상상력의 확장으로 수업을 활용할 수 없음을 의미합니다. 이런 식으로 개인 액세스 수정자는 클래스를 고려하지 않습니다.

노트 : 클래스 또는 인터페이스는 비공개로 선언 할 수 없습니다.

통사론:

public class Clock {private long time = 0}

이 개인 액세스 수정 자에 대한 명확한 아이디어를 얻으려면 예제를 살펴보십시오.

예:

package p class A {private void display () {System.out.println ( 'Edureka')}} class B {public static void main (String args []) {A obj = new A () // private access to 다른 클래스의 메소드 obj.display ()}}

이 프로그램의 출력은 다음과 같습니다.

오류 : display ()는 A에 개인 액세스 권한이 있습니다.

obj.display ()

여러분이 개인 액세스 수정 자로 명확하기를 바랍니다. 다음으로 다음 유형 인 공개 액세스 수정 자로 이동하겠습니다.

공개 액세스 수정 자

  • 공용 액세스 수정자는 키워드를 사용하여 지정됩니다. 공공의.
  • 공용 액세스 수정자는 다른 모든 액세스 수정 자 중에서 광범위한 범위를 갖습니다.
  • , 메소드 또는 데이터 멤버는 다음과 같이 선언됩니다. 공공의 아르 어디서나 액세스 가능 프로그램. 공개 데이터 구성원의 범위에는 제한이 없습니다.

통사론:

package edureka.co public class PublicClassDemo {// 여기에서는 수정자를 언급하지 않았으므로 기본 수정 자로 작동합니다. public int myMethod (int x) {return x}}

이제이 공용 액세스 수정 자에 대한 명확한 아이디어를 얻으려면 예제를 살펴보십시오.

예:

package p1 public class A {public void display () {System.out.println ( 'edureka!')}}
package p2 import p1. * class B {public static void main (String args []) {A obj = new A obj.display ()}}

출력 : 에듀 레카!

자바 캐스팅 더블 int

이것은 Java의 공용 액세스 수정 자에 대한 모든 것입니다.

Java의 다음 액세스 수정자인 보호 된 액세스 수정 자로 이동하겠습니다.

보호 액세스 수정 자

  • 보호 된 액세스 수정자는 키워드를 사용하여 지정됩니다. 보호 .
  • protected로 선언 된 메서드 또는 데이터 멤버는 동일한 패키지 또는 다른 패키지의 하위 클래스 내에서 액세스 할 수 있습니다.
  • 보호 된 멤버는 자식 또는 파생 클래스에서만 액세스 할 수 있습니다.

통사론:

package packageFourProtected public class ProtectedClassFour {protected int myMethod (int a) {return a}}

예를 살펴 보겠습니다.

예:

spackage p1 // Class A public class A {protected void display () {System.out.println ( 'Java Certification Training')}}
package p2 import p1. * // 패키지 p1의 모든 클래스 가져 오기 // B 클래스는 A의 하위 클래스입니다. 클래스 B는 A를 확장합니다. {public static void main (String args []) {B obj = new B () obj.display ()}}

출력-Java의 액세스 수정 자-Edureka

이것은 Java의 액세스 수정 자 아래에있는 다양한 메소드에 대해 알아야 할 모든 것입니다. 다음 주제로 넘어가겠습니다.

메서드 재정의가있는 액세스 수정 자

만약 어떤 메서드라도 재정의한다면, 서브 클래스에서 선언 된 재정의 된 메서드는 제한적이어서는 안됩니다.

아래 예를 살펴보십시오.

class A {protected void msg () {System.out.println ( 'Hello java')}} public class Simple extends A {void msg () {System.out.println ( 'Hello java')} // CTError public static void main (String args []) {Simple obj = new Simple () obj.msg ()}}

기본 수정자는 protected보다 더 제한적입니다. 이것이 컴파일 타임 오류가있는 이유입니다.

액세스 제어 및 상속

  • 경우에 따라 일부 클래스의 하위 클래스를 만들면 해당 하위 클래스의 메서드에 수퍼 클래스보다 액세스 수정자가 할당되어 액세스 할 수 없습니다.
  • 예를 들어, 수퍼 클래스의 메소드가 공공의 그러면 하위 클래스에서도 공용이어야합니다. 수퍼 클래스의 메소드가 보호, 그런 다음 지정된 하위 클래스에서 보호되거나 공용이어야합니다.
  • private로 선언 된 메서드는 전혀 상속되지 않습니다.

이것은 우리가 배운이 기사의 끝으로 우리를 가져옵니다 Java의 액세스 수정 자에. 이 튜토리얼에서 여러분과 공유 한 모든 내용이 명확하기를 바랍니다.

가능한 한 많이 연습하고 경험을 되 돌리십시오.

'Java의 Access Modifiers'에 대한이 기사가 관련되어 있다면 다음을 확인하십시오. 전 세계에 250,000 명 이상의 만족 한 학습자 네트워크를 보유한 신뢰할 수있는 온라인 학습 회사입니다. 우리는 당신의 여정의 모든 단계에서 당신을 돕기 위해 여기에 있습니다.이 자바 인터뷰 질문 외에 우리는 자바 개발자가되기를 원하는 학생과 전문가를 위해 설계된 커리큘럼을 마련했습니다. 이 과정은 Java 프로그래밍을 시작하고 Hibernate & Spring과 같은 다양한 Java 프레임 워크와 함께 핵심 및 고급 Java 개념 모두에 대해 교육하도록 설계되었습니다.

질문이있는 경우 '자바의 액세스 수정 자'의 댓글 섹션에 모든 질문을 자유롭게 물어보십시오. 저희 팀이 기꺼이 답변 해 드리겠습니다.