분류 전체보기 1088

[ Java 접근제어자 제대로 이해하기 : Protected ]

접근 제어자는 생각보다 단순하지 않다. 접근 제어자는 위 그림과 같이 절대 단순하지 않다. 특히 객체 멤버에 대한 접근인가, 정적 멤버에 대한 접근인가에 따라 생각할 것이 많아진다. 그리고 protected 가 자신과 상속 관계에 있는 서브 클래스만 접근 가능한 걸로 착각하는 경우가 많은데, 같은 패키지라면 한 집에 산다고 생각하기에 접근 가능하다는 사실도 꼭 기억해야 한다. 결과를 확인해보면 아래와 같다. 하나씩 살펴보자. - 같은 패키지 / ClassA / Instance Method : public / protected / default / private 모두 접근 가능하다. - 같은 패키지 / ClassA / Static Method : public / protected / default / pr..

[메모] 2025.06.14

[ OOP 상속 정의해보기 ]

객체지향의 상속은 상위 클래스(분류)의 특성을 '재사용' '확장' 하는 것이다. 하위 클래스는 상위 클래스의 한 분류다. (하위 클래스 is a kind of 상위 클래스)인터페이스는 is able to 관계로 '구현 클래스는 인터페이스 할 수 있다' Java 에서는 다중 상속의 장점만 취하기 위해 클래스는 단일 상속, 인터페이스는 다중 상속을 가능하게 했다.

[ OOP 추상화 정의해보기 ]

'클래스'와 '객체' 객체지향의 4대 특성(캡상추다)은 '클래스'를 통해서 구현되기 때문에 '클래스'와 '객체'에 대해서 먼저 살펴볼 필요가 있다. '객체'란 세상에 존재하는 유일 무이한 '사물'을 의미한다.'클래스'란 세상에 존재하는 사물들을 '분류'할 수 있는 어떠한 개념이다. '추상화' '추상화'를 이해할 수 있는 좋은 예시는 '이집트 벽화'이다. 이집트 벽화를 살펴보면, 사람이 그려져 있는데, 측면에서 바라봐야 보이는 사람의 얼굴, 다리 그리고 정면에서 바라봐야 보이는 사람의 눈, 상체로 그려져 있다. 글로써 보면 이상하다고 느껴지는 이집트 벽화는 실제로 보면 위화감이 전혀 들지 않고 오히려 눈에 확 띄는 그림이다. 이처럼 '추상화'는 '구체적인 것'을 분해해서 '관심 영역'에 대한 특성만을 가..