``` public class Circle { private int radius; public Circle(int radius) { this.radius = radius; } public int getRadius() { return radius; } } public class NamedCircle extends Circle { String name; public NamedCircle(int radius, String name){ super(radius); this.name=name; } public void show(){ System.out.println(this.name+", 반지름 = "+this.radius); } public static void main(String[] args) { NamedCircle w = new NamedCircle(5, "Waffle"); w.show(); } } ``` 상속관계에서 생성자를 호출시키고 이름과 반지름값을 출력하는 문제인데요 Circle class의 소스는 이미 정해져있었습니다. 그런데 저는 여기서 반지름(radius)값을 그냥 this.radius로 나타냈는데요 이 부분이 빨간줄이 쳐집니다. 생각해보니 슈퍼클래스에서 radius값이 private으로 지정되어있고 circle 생성자에서 this.radius=radius라고 했으므로 this.radius도 private속성을 가지게 되서 끌어올 수 없게된것 같습니다. 근데 이 문제 해답을 보면 this.radius대신 getRadius()를 집어넣어서 radius값을 출력하는데요. 저는 왜 return값의 경우는 private속성이 무시된건지 궁금합니다. return radius라고 되어있어도 private속성때문에 return 명령자체에 빨간줄이 쳐져야 되는 것 아닌가요? return명령이 속성을 무시하는 우선권을 지니는건가요?
# 접근제한자 private 키워드는 외부 클래스로부터 데이터 접근을 제한 합니다. `getRadius()`메소드는 Circle 클래스 내부이므로 얼마든지 멤버변수 radius 에 접근할 수 있습니다. 따라서, getRadius() 메소드는 정상 동작 합니다. 답변이 늦었네요! 질문 주셔서 감사합니다 ^^