📌 함수
function의 축약어인 fun을 쓴다.
return이 없을 때
void 같은 경우
: Unit 생략 가능
return이 있을 때
변수 이름 : 변수 타입(첫 글자 대문자)
📌 val vs var
val (value) 변하지 않는 값
var (valuable) 변할 수 있는 값
자동 추론이 가능하기 때문에 변수 타입 생략 가능하다.
📌 String Template
띄어쓰기가 없거나 여러 개를 혼합해서 사용한다면 { } 사용한다.
$ 문자를 쓰고 싶다면 앞에 \를 붙여준다.
📌 조건식
when은 switch와 비슷한 것이다.
📌 Expression vs Statement
값을 반환하면 Expression이고 명령하는 것은 Statement으로 분류한다.
코틀린의 모든 함수는 Expression이다.
아무리 리턴값이 없더라도 Unit을 반환하기 때문이다.
자바는 void 함수도 존재하기 때문에 Statement도 존재한다.
📌 Array and List
arrayOf 와 listOf 로 초기화한다.
리스트 종류
1. List 값을 변경 못한다.
list 원소를 바꾸는 것은 불가능하다.
array와 다르게 list는 인터페이스이기 때문에 값을 가져올 수만 있다.
2. MutableList 읽기와 쓰기가 모두 가능하다.
📌 반복문 For / While
For
While
📌 Nullable / NonNull
NPE: Null pointer Exception
컴파일 과정에서 오류를 알려준다.
Null 은 많이 쓰기도 하고 매우 중요한 파트이기에 제대로 이해해야 한다.
?: 엘비스 연산자
null일 경우 No lastName 출력
!! 절대로 null 없을 경우
확실하지 않은 경우 지양해야 한다.
📌 Class
자바와 다르게 클래스 이름과 파일명이 동일하지 않아도 된다.
인스턴스 생성시 new 를 써주지 않아도 된다.
기본 생성자
this 부생성자는 주생성자에게 위임을 받아야 한다.
init 인스턴스 생성하면 실행되는 것인데 주생성자의 일부이기에 먼저 실행된다.
📌 상속
코틀린의 기본 클래스는 파일 클래스라 같은 파일에 있더라도 접근이 불가하다.
그래서 open을 해줘야 하고 자바와 동일하게 하나의 상속만 가능하다.
singASong 메서드를 Korean 클래스 특징으로 바꾸려면 오버라이딩을 한다.
부모 메서드를 쓰려면 super 를 사용한다.
'🍞 Front-End > Android' 카테고리의 다른 글
[Android] 안드로이드 리사이클러뷰(RecyclerView) (0) | 2022.10.23 |
---|---|
[Android] No speakable text present 경고 없애기 (0) | 2022.10.18 |
[Kotlin] 안드로이드 스튜디오 AVD(Android Virtual Device) 설정 (0) | 2022.09.22 |
[Kotlin] 코틀린 3강으로 끝내기 - 3편 심리테스트 앱 만들기 (0) | 2022.09.20 |
[Kotlin] 코틀린 3강으로 끝내기 - 2편 고급 문법 (2) | 2022.09.20 |