상식닷컴
로그인
가입하기
2026년 상식닷컴 선정 식당 & 카페 리스트
2025년 2026년 신상 호텔 리스트
최근에 오픈한 호텔을 찾는다면 살펴보세요
일주일 식단표 어플
자동 일주일 식단표 어플
안드로이드
아이폰
주식 & 코인 차트의 신
1000만원으로 2000만원 만들기 프로젝트
수정하기 - 자바에서 public, private, protected 키워드의 역할은?
닉네임
비밀번호
제목
내용
[이미지 업로드는 권한이 있는 사람만 가능. 하단 카톡으로 연락]
<a href='https://sangseek.com/sangseeks/자바/ko'>자바</a>에서 `public`, `private`, `protected` 키워드는 접근 제어자(access modifier)로, 클래스, 메서드, 변수 등의 접근 범위를 정의하는 데 사용됩니다. 이들은 객체 지향 프로그래밍의 중요한 개념 중 하나로, 데이터 은닉(data hiding)과 <a href='https://sangseek.com/sangseeks/캡/ko'>캡</a>슐화(encapsulation)를 통해 코드의 안전성과 유지보수성을 높이는 데 기여합니다. 각 접근 제어자의 역할과 특징을 자세히 살펴보겠습니다. 1. Public- 정의 : `public` 키워드로 선언된 클래스, 메서드, 변수는 모든 다른 클래스에서 접근할 수 있습니다.- 용도 : 주로 다른 클래스와의 상호작용이 필요한 경우에 사용됩니다. 예를 들어, API를 설계할 때 외부에서 호출할 수 있는 메서드나 변수를 `public`으로 선언합니다.- 예시 : ```java public class <a href='https://sangseek.com/sangseeks/MyClass/ko'>MyClass</a> { public int myPublicVariable; public void myPublicMethod() { // 어떤 작업 수행 } } ```- 특징 : `public`으로 선언된 요소는 같은 패키지에 있는 클래스뿐만 아니라, 다른 패키지에 있는 클래스에서도 접근할 수 있습니다. 2. Private- 정의 : `private` 키워드로 선언된 클래스, 메서드, 변수는 해당 클래스 내부에서만 접근할 수 있습니다.- 용도 : 데이터 은닉을 위해 사용됩니다. 외부에서 직접 접근할 수 없도록 하여 클래스의 내부 상태를 보호하고, 잘못된 사용을 방지합니다. 보통 `private` 변수에 접근하기 위해서는 `getter`와 `setter` 메서드를 사용합니다.- 예시 : ```java public class MyClass { private int myPrivateVariable; private void myPrivateMethod() { // 어떤 작업 수행 } public int getMyPrivateVariable() { return myPrivateVariable; } public void setMyPrivateVariable(int value) { myPrivateVariable = value; } } ```- 특징 : `private`으로 선언된 요소는 같은 클래스 내에서만 접근할 수 있으며, 다른 클래스나 패키지에서는 접근할 수 없습니다. 3. Protected- 정의 : `protected` 키워드로 선언된 클래스, 메서드, 변수는 같은 패키지 내의 다른 클래스와, 해당 클래스를 상속받은 서브클래스에서 접근할 수 있습니다.- 용도 : 상속 관계에서 부모 클래스의 속성과 메서드를 <a href='https://sangseek.com/sangseeks/자식 클래스/ko'>자식 클래스</a>에서 사용할 수 있도록 하면서, 외부 클래스에서는 접근을 제한하고자 할 때 사용됩니다.- 예시 : ```java public class ParentClass { protected int myProtectedVariable; protected void myProtectedMethod() { // 어떤 작업 수행 } } public class ChildClass extends ParentClass { public void accessProtected() { myProtectedVariable = 10; // 접근 가능 myProtectedMethod(); // 접근 가능 } } ```- 특징 : `protected` 요소는 같은 패키지 내의 다른 클래스와, 다른 패키지의 서브클래스에서 접근할 수 있습니다. 요약- Public : 모든 클래스에서 접근 가능- Private : 해당 클래스 내에서만 접근 가능- Protected : 같은 패키지 내의 클래스와 자식 클래스에서 접근 가능이러한 접근 제어자는 클래스의 설계를 보다 명확하게 하고, 유지보수성을 높이며, 코드의 안전성을 강화하는 데 중요한 역할을 합니다. 적절한 접근 제어자를 사용함으로써 클래스의 인터페이스와 구현을 분리하고, 객체 지향 프로그래밍의 원칙을 잘 지킬 수 있습니다.
이용안내
커뮤니티 이용안내
×
- 게시한 게시글로 발생하는 문제는 게시자에게 책임이 있습니다.
- 게시글이 타인/타업체의 저작권을 침해할 경우 모든 책임은 게시자에게 있습니다. 게시자가 모든 손해를 부담해야 합니다.
- 상식닷컴 운영자는 게시자와 상의하지 않고 게시글을 수정 또는 삭제할 수 있습니다.
- 상식닷컴 운영자는 깨끗한 커뮤니티 공간을 만드는 것이 1순위입니다.
수정하기
취소하기