블로그 이미지
kalstein

여러가지 프로그래밍 관련이나...신변잡기적인 글들을 남기는 블로그입니다. 지식은 나누는만큼 강력해집니다 ^^

Rss feed Tistory
Programming 2008. 11. 26. 10:50

Java의 implements, extends 를 C++로 표현하자면?

요즘 책을 보는데 언어가 JAVA로 되어있다. 그래서 몇가지 단어들이 익숙치 않은데...
그중에서 좀 애매한 부분이 'implements' 와 'extends'. extends를 구현상속이라고 되어있더라.
C++에선 상속이...그냥 pulic상속이냐, private 상속이냐...이정도만 있어서 뭐가 있나보다...하고 넘어갔다가 오늘 찾아보니 java에서는 좀 상속을 엄격하게 다루는듯.

implements를 C++로 하자면

struct IConnection
{
    virtual void connect() = 0;
};

class TCPConnection : public IConnection
{
public:
    virtual void connect()
    {
        어쩌구저쩌구...
    }
private:
    어쩌구저쩌구...
};

요런식으로 interface만 정의된 (pure virtual function들만 있는...) class를(혹은 구조체를) 상속받아서 구현하는것을 의미한다.

그 외의 것은 다 extends로 보면 된다.
,
TOTAL TODAY