연산자 오버로딩 / 다중 상속을
cpp는 허용
자바는 허용하지 않는다.
다중상속의 경우 다중상속시 상속했던 클래스들을 모두 알아야 하기에 정보 은닉 및 캡슐화에 치명적이고
(결국 볼게 더 많아진 c 일뿐 유지 보수 측면에서)
연산자 오버로딩은 변형이 심하게 될 경우 파악해야할 부분이 많이 늘어나기에 가독성이 떨어져서 이래저래 빼버린듯 하다.
(극단적으로 클래스에 대한 operator[] 를 전혀 다르게 정의해서 사용한다면
배열로 사용할 수 없지만 해석하는 사람으로서는 혼동할 수 밖에 없다.)
cpp는 허용
자바는 허용하지 않는다.
다중상속의 경우 다중상속시 상속했던 클래스들을 모두 알아야 하기에 정보 은닉 및 캡슐화에 치명적이고
(결국 볼게 더 많아진 c 일뿐 유지 보수 측면에서)
연산자 오버로딩은 변형이 심하게 될 경우 파악해야할 부분이 많이 늘어나기에 가독성이 떨어져서 이래저래 빼버린듯 하다.
(극단적으로 클래스에 대한 operator[] 를 전혀 다르게 정의해서 사용한다면
배열로 사용할 수 없지만 해석하는 사람으로서는 혼동할 수 밖에 없다.)
'Programming > Java' 카테고리의 다른 글
java 명령어 줄 인수 (0) | 2014.03.10 |
---|---|
java break / continue (0) | 2014.03.10 |
java explicit upcasting 묵시적 형변환 (0) | 2014.03.07 |
java byte 형의 오묘함 (0) | 2014.03.07 |
java primitive data type + 연산자 (0) | 2014.03.07 |