목록클래스 (2)
여행을 개발하다

안녕하세요! 오늘 포스팅 할 내용은 'Diamond of Death 현상'입니다. 사실 본론부터 이야기하자면, Java에서는 일어날 수 없는 현상입니다. 왜냐하면 Java는 다중 상속을 허용하지 않기 때문입니다. 여기서 다중 상속이란, 여러 개의 서브 클래스가 하나의 동일한 슈퍼 클래스를 상속받는 것을 의미하는데요. 하나의 클래스의 활용도를 엄청 높일 수 있을 것만 같은데, Java는 왜 C++로부터 물려받지 않았을까요? 그 이유를 지금부터 풀어갑니다. * Diamond of Death (데스 다이아몬드 현상) * B와 C클래스는 A라는 부모 클래스를 상속 받은 자식 클래스이다. * 그런데 D라는 클래스는 B와 C클래스를 동시에 상속받았다. * 결국 D는 B와 C클래스를 상속 받기는 했지만, A클래스를 ..

안녕하세요! 오늘 포스팅 할 내용은 "클래스(Class)의 상속(Inheritance)"입니다. Java가 C++과 가장 다르다고 느낀 부분은, class가 가장 기본이 된다는 것이었어요. Java는 C계열의 언어와는 달리 다양한 class와 method가 정의되어 있습니다. 그만큼 C계열의 언어에 비해 코딩이 편하다(?)고 생각하는데요. 문제는 package와 project 등을 생성할 때마다 새로운 class를 만들다보면 , 동일한 이름과 기능을 갖게 되는 class들 때문에 많은 미스커뮤니케이션과 혼란이 발생할꺼에요. 이것이 바로 클래스의 상속이 적시적소에 이루어져야 하는 이유입니다. 그럼 Java의 기본이 되는 class의 상속(Inheritance)에 대해 알아볼까요? 1. 클래스의 상속이란? ..