Open kjy0349 opened 4 months ago
접근지정자를 따로 지정하지 않는다면 default 접근지정자가 설정되게 됩니다. default 접근지정자는 private-package라고 불리며 동일한 패키지 내에서만 접근이 가능하도록 합니다.
1. default 접근지정자와 protected 접근지정자의 차이는 무엇인가요? default 접근지정자와 protected 접근지정자는 모두 동일 패키지에서만 접근이 가능하도록 설정됩니다. 하지만 protected 접근지정자를 설정할 경우 다른 패키지에서 상속을 받는다면 해당 클래스에 접근이 가능하게 된다는 차이점이 존재합니다. 2. 접근지정자를 사용해 비즈니스 로직을 구현하거나, 특정 목적을 이룬 경험이 있으면 말해주세요. 프로젝트에서 사용하지는 않았지만 알고리즘 공부를 진행하며 작성했던 코드들을 접근지정자를 사용해 관리했던 경험이 있습니다. 알고리즘 스터디를 진행하면서 작성했던 코드들을 단계별로 패키지로 나누어 저장하고 관리하면서 동일한 역할을 하는 Method들을 작성했을 때 private으로 작성하지 않으면 다른 문제를 해당 패키지 내에서 풀 때 다른 패키지의 Method나 Custom Class들을 불러오게 되는 실수를 범하면서 private으로 모두 관리하며 해당 문제점을 해결했었습니다.
default 접근 지정자로 선정되며 같은 패키지 내에서만 사용됩니다.
- default 의 경우 같은 패키지내에서 사용되는 접근 제한자 입니다. protected의 경우 같은 패키지내에서 사용되는 것과 더불어 해당 클래스를 상속받은 클래스 역시도 사용할 수 있는 제한자입니다. - 알고리즘 레포지토리에서 함수를 구현할 때, 많은 문제에서 사용되는 알고리즘 이름인 dfs, bfs 등의 경우, public으로 설정하면 다른 클래스에서 사용될 수 있기 때문에 이를 방지하기 위해 private 제한자를 설정하여 구현하고 있습니다.
문제
접근지정자를 지정하지 않으면, 적용되는 접근지정자는 무엇인가요?
예상 꼬리 질문
들어가야 할 키워드 정리