[Kotlin/코틀린] override와 super 개념

2024. 11. 2. 20:09·Kotlin

상속

코틀린에서는 상속 가능한 클래스를 만들기 위해서는 open 키워드를 사용한다.

open 키워드를 사용하면 클래스나 메서드를 상속 및 오버라이딩 할 수 있게 한다.

 

기본적으로 코틀린의 모든 클래스와 메서드는 final로 간주되므로, 상속이 불가능하다. 즉, 다른 클래스가 상속하거나 메서드를 오버라이딩하지 못하게 막혀있다. 이를 가능하게 해주는 것이 open 키워드이다.

open class Animal {
    open fun sound() {
        println("동물이 소리를 냅니다.")
    }
}

 

override를 하기 위해서는 fun 키워드 앞에 override를 함께 붙여 사용하면 된다.

물론, open 처리된 메서드만 가능하다.

class Dog : Animal() {
    override fun sound() {
        // super를 사용하여 상위 클래스의 메서드 호출
        super.sound()
        // 추가 동작
        println("멍멍!")
    }
}
fun main() {
    val myDog = Dog()
    myDog.sound()
}
동물이 소리를 냅니다.
멍멍!

'Kotlin' 카테고리의 다른 글

[Kotlin/코틀린] @Parcelize / Parcelable을 사용한 직렬화와 역직렬화  (0) 2024.11.09
[Kotlin/코틀린] String과 Int 변환 - String to Int, Int to String 변환 방법  (0) 2024.11.07
[Kotlin/코틀린] MVVM 패턴이란? - MVVM 패턴과 Counter 앱  (0) 2024.11.03
[Kotlin/코틀린] 인터페이스와 다중 상속이란?  (0) 2024.11.02
'Kotlin' 카테고리의 다른 글
  • [Kotlin/코틀린] @Parcelize / Parcelable을 사용한 직렬화와 역직렬화
  • [Kotlin/코틀린] String과 Int 변환 - String to Int, Int to String 변환 방법
  • [Kotlin/코틀린] MVVM 패턴이란? - MVVM 패턴과 Counter 앱
  • [Kotlin/코틀린] 인터페이스와 다중 상속이란?
Haessae0
Haessae0
꾸준히 탐구하고 배우는 프로그래머의 기록. 깊이 있는 기술 이야기를 공유하고 싶습니다!
  • Haessae0
    민수의 기록장
    Haessae0
  • 전체
    오늘
    어제
  • 블로그 메뉴

    • 홈
    • Github
    • 분류 전체보기 (26) N
      • CS (2) N
        • Web (1)
        • 인증 (1) N
      • DB (2)
        • Oracle (2)
      • Server (6)
        • Docker (3)
        • HomeServer (3)
      • Java (9)
        • 개념 & 문법 (1)
        • Algorithm (2)
        • Spring || SpringBoot (6)
      • Git & Github (2) N
        • 개념 (1) N
      • Kotlin (5)
  • 공지사항

  • 인기 글

  • 최근 글

  • 태그

    코틀린
    Spring
    Kotlin
    타임리프
    도커
    스프링
    스프링부트
    오블완
    티스토리챌린지
    SpringBoot
  • hELLO· Designed By정상우.v4.10.3
Haessae0
[Kotlin/코틀린] override와 super 개념
상단으로

티스토리툴바