본문 바로가기

Web/JAVA

(2)
인터페이스와 추상클래스 오늘은 추상클래스와 인터페이스에 대해 좀 더 깊게 알게 되었다.대학교에서 처음 개념을 잡을때와는 깨달음과 재미의 깊이가 달랐다. 이전까지 추상클래스는 단순히 클래스를 추상화하여 구현없는 껍데기를 정의해놓은 클래스,인터페이스는 클래스와 달리 인스턴스 변수를 가질 수 없는 즉, 더욱 추상화된 껍데기이며 다중 구현이 가능.이정도의 개념으로만 이해하고 스프링에서 사용했다.(사실상 복붙) 이후 자바의 정석에서 이 부분을 다시 공부하는데스타크래프트라는 게임에 비유해서 인터페이스의 강력함을 알게되었다.확실히 전혀 모르는 상태에서 개념서를 보는것과 1~2독을 하거나 최소한의 개념을 갖춘 상태에서다시 개념서를 볼 떄 이해력과 재미가 달라지는 것 같다. 추상클래스 추상클래스 자체로 클래스(설계도)의 역할은 다하지 못한다...
상속과 포함관계 상속과 포함관계 자바의 정석 7장 객체지향 프로그래밍2의 소단원에서 객체지향에서의 상속과 포함관계에 대한 설명이 나온다. 두 방법 모두 클래스 간에 관계를 정의하여 재사용성을 높이는 개념이라고 한다. 상속관계 : ~은 ~이다. ( is - a ) 포함관계 ~은 ~을 가지고 있다. ( has - a ) Ex1 ) 붕어빵은 빵이다. 붕어빵은 빵을 가지고 있다. => 붕어빵을 만들 때 빵을 재료로 하므로 포함관계도 말이 되는것 같기도 하다 하지만 빵의 한 종류이기 떄문에 스포츠카자동차의 관계처럼 상속관계가 맞다. Ex2 ) 사각형은 네개의 점이다. 사각형은 네개의 점을 가지고 있다. => 여기서는 사각형이 네개의 점이라고 표현하기에는 무리가 있어보인다. 선, 너비, 높이 등이 있기 때문일까? 사각형은 네개의 ..