일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- javascript
- pygame
- 코틀린 클래스
- 자바 스트림
- 프로그래머스
- 파이게임
- js
- kotlin 클래스
- 자바8
- 자바스크립트
- oauth2
- oracle
- MSA
- SQL 문제풀이
- 오라클
- springboot
- Leetcode
- mysql
- SQL프로그래머스
- 스프링시큐리티
- java8
- 스프링
- Spring
- python
- spring boot
- 구글로그인
- SQL
- 스프링부트
- LeetCode SQL
- 스프링부트 채팅서버
Archives
- Today
- Total
웅겹살의 프로그래밍 삼매경
[kotlin] 코틀린 클래스의 상속 본문
728x90
상속이 필요한 경우는 두 가지
- 이미 존재하는 클래스를 상속하여 새로운 클래스를 생성
- 여러개의의 클래스가 존재하는데 클래스들의 공통점을 뽑아 코드관리를 편하게 하기 위해
코틀린은 상속 금지가 기본값
fun main() {
var a = Animal("티몬", 3, "댕댕이")
var b = Dog("티몬", 3)
// a와 b 같은결과 확인 가능
a.introduction()
b.introduction()
b.bark()
var c = Cat("품바", 2)
c.introduction()
c.meow()
}
// 코틀린은 상속 금지가 기본값
// open은 클래스가 상속될 수 있도록 하는 키워드
open class Animal(var name:String, var age:Int, var type:String){
fun introduction(){
println("저는 ${type} ${name}이고, ${age}살 입니다.")
}
}
// 서브 클래스 생성 시 반드시 슈퍼클래스의 생성자까지 호출되어야 함
// 클래스 선언 뒤에 콜론을 붙이고 슈퍼 클래스의 생성자 호출
class Dog(name:String, age:Int): Animal(name,age,"댕댕이"){
// 서브 클래스만의 함수 구현 가능
fun bark(){
println("멍멍멍\n")
}
}
class Cat(name:String, age:Int): Animal(name,age,"냐옹이"){
fun meow(){
println("야오옹")
}
}
728x90
'코틀린' 카테고리의 다른 글
[kotlin] 코틀린 클래스 생성자 (0) | 2021.09.10 |
---|---|
[kotlin] 코틀린 클래스 기본구조 (3) | 2021.09.08 |
[kotlin] 코틀린 반복문 (0) | 2021.09.07 |
[kotlin] 코틀린 조건문 비교연산자 (2) | 2021.09.06 |
[kotlin] 코틀린 함수 (0) | 2021.08.18 |
Comments