ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • (Kotlin / 코틀린) Open (상속)
    언어 공부/코틀린 공부 2023. 2. 2. 19:52

    안녕하세요~ 코딩하는 코알못 코메인입니다.

     

    코틀린에서 사용하는 Open을 보자.

     

    Open이란 코틀린에서 상속을 받기위해 사용하는 키워드이다.

     

    코틀린은 다른 언어들과 달리 모든 클래스가 자동으로 최종값으로 된다. 그렇기에 그냥 상속 받을 수가 없다.

    예를 들어 자바에서는 모든 클래스가 상속이 가능하다. 그래서 최종이라고 명시를 해줘야한다.

    코틀린은 그와 반대로 자동으로 최종이고, 상속이 불가능하기 때문에 Open키워드를 사용해 상속을 해줘야한다.

    그렇지 않으면 "type is final, so cannot be ingerited from'라는 오류를 보게 될 것이다.

     

    추가로 코틀린에서 상속하는 방식은 타입 선언처럼 :를 사용해 하게 되는데 구현을 통해 보자.

     

    구현

    class parent{}
    
    class chile : parent(){}

     

    자바같은 경우에 이런식으로 추가적인 키워드 없이도 상속이 가능하지만 코틀린에서는 이렇게 하면 오류가 뜰 것이다.

    그래서 코틀린에서는

    open class parent{}
    
    class chile : parent(){}

     

    이렇게 상속할 클래스 앞에 open 키워드를 붙여서 사용한다.

    그리고 open 키워드는 클래스에만 사용하는 것이 아니라 변수나 함수를 오버라이딩 할때도 상속해줄 변수나 함수에 open키워드를 사용해 줘야한다.

     

    코틀린에서의 open에대해 알아보았습니다.

    보시는 분들에게 도움이 되셧으면 좋겠고, 만약 보시고 틀린 점이나 추가로 정보를 주고 싶은 분이 있다면 거리낌 없이 댓글로 남겨주시면 감사히 새겨 듣겠습니다. 봐주셔서 감사합니다.

    댓글