강의

멘토링

커뮤니티

인프런 커뮤니티 질문&답변

Grid님의 프로필 이미지
Grid

작성한 질문수

모든 개발자의 실무를 위한 올인원 기본기 클래스

객체 지향 리팩토링 - 2

public private 관련 질문드립니다.

작성

·

268

1

안녕하세요! 객체지향 강의를 듣다가 파이썬에서 public과 private같은 키워드를 사용한 접근제어자 문법을 직접적으로 제공하지는 않지만 __를 이름 앞에 사용하면 private을 구현할 수 있는 걸로 알고 있었는데, 강의에서는 파이썬에서는 이를 구현할 수 없다고 말씀하셔서 혹시 __를 이름 앞에 사용하는 것이 C++나 Java같은 언어에서 사용하는 private과 근본적으로 다르고 비슷하게 흉내내는 것 뿐인지 관련하여 궁금해서 질문드립니다. 좋은 강의와 지식 공유 감사합니다.

답변 1

0

그랩님의 프로필 이미지
그랩
지식공유자

좋은 질문 감사합니다.

파이썬의 name mangling (__ 붙이기)를 사용하면 private 처럼 사용은 할 수 있지만, 실제로 private은 아니고 메소드의 이름이 변경되는 형태라고 보시면 될 것 같아요!

객체지향에서 private이라면 아예 접근이 안되야하지만 파이썬에서는 아직까지 접근 권한에 대한 제어가 이렇게 촘촘하게 되어있지는 않습니다.

Grid님의 프로필 이미지
Grid
질문자

답변 감사합니다! 덕분에 확실하게 이해했습니다.

Grid님의 프로필 이미지
Grid

작성한 질문수

질문하기