블로그 이미지
.
속눈썹맨

공지사항

최근에 올라온 글

최근에 달린 댓글

최근에 받은 트랙백

글 보관함

calendar

1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31

[PL]OOP, polymorphism

2006. 6. 19. 00:03 | Posted by 속눈썹맨

C++에서 OOP를 소개할 때, polymorphism도 덧붙여서 이야기하곤 한다.
하지만 polymorphism과 OOP는 좀 다른 개념이다.

. OOP의 특징
  . dynamic look-up
   . 각 object에 알맞는 member function 찾기
   . virtual member function 사용시
  . encapsulation(= abstraction)
  . subtype
  . inheritance

. Polymorphism
  . 다른 type에 대해서 같은 algorithm을 사용하는 것.

. C++
  . template
  . explicit polymorphism
  . type마다 각자 copy를 가진다.

. ML
  . implicit polymorphism
  . 1개의 copy만 가진다.

. Java
  . generic (Java 1.5의 compile-time)
  . Object class를 이용하여 흉내낼 수도 있다.
   (Java 1.5도 run-time에는 그렇게 동작한다.