Kotlin/Basic
![[Kotlin/Basic] 코틀린에서의 상속](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F9PeQ6%2FbtrJC5LDxyX%2FczY46tsVXxjhEQRJn1hO10%2Fimg.png)
[Kotlin/Basic] 코틀린에서의 상속
1. 추상클래스 추상클래스의 이해를 돕기 위해 먼저 동물이라는 상위클래스와 고양이, 펭귄 이라는 하위클래스를 만들어보자! 위의 자바 클래스를 코틀린으로 바꾸어보자! abstract class Animal( protected val species : String, protected open val legCount : Int //프로퍼티를 오버라이드 할 때 추상 프로퍼티가 아니라면 //무조건 open을 붙여줘야만함 ) { abstract fun move() } 이렇게 변경시킬 수 있고, 위의 open이라는 지시어는 오버라이드를 할 수 있게 열어준다는 뜻이다! 먼저 Cat클래스를 만들어 Animal클래스를 상속받아보자. class Cat( species : String ) : Animal(species, 4)..
![[Kotlin/Basic] 코틀린에서의 클래스](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdLpWLv%2FbtrJn796sDJ%2Fo2wBqot46KkGDNiCNHFvkK%2Fimg.png)
[Kotlin/Basic] 코틀린에서의 클래스
1. 클래스와 프로퍼티 class Person constructor(name : String, age : Int){ val name = name var age = age } 자바에서는 클래스를 생성해주고 안에 Person( ) 하고 생성자를 만들어 주었는데, 코틀린에서는 클래스를 생성한 뒤 constructor를 통해 생성자를 적어준다. 이 때 자동으로 getter, setter가 만들어지고, 이 constructor는 생략이 가능하다!! val person = Person("ssongsik", 25) println(person.name) 또한, person.getName을 통해 데이터를 불러왔어야 했는데 위와 같이 person.name으로 이름을 불러올 수 있고, setter 또한, person.set..
[Kotlin/Basic] 코틀린에서의 함수
1. 함수 선언 문법 보통 코틀린에서의 함수 선언은 다음과 같이 구현할 수 있다. fun max5(a : Int, b : Int) : Int { if(a>b){ return a } else { return b } } a, b를 매개변수로 받아 더 큰 숫자를 반환하는 함수이다. 먼저, 자바하고와의 차이는 public을 생략할 수 있고, 매개변수는 : 타입으로 적어준다. 하지만 위의 코드에서 더욱 코드를 간결하게 할 수 있다. fun max(a: Int, b:Int) = if(a>b) a else b 함수의 전체 중괄호를 빼고 하나의 값이기 때문에 '='으로 표현이 가능하다. 또한, 반환타입이 모두 int이고, '='을 사용하기 때문에 Int는 생략이 가능하다. 주의할 점은 block { } 을 사용할 때 ..
[Kotlin/Basic] 코틀린에서의 예외처리
1. try - catch 코틀린에서도 자바와 동일하게 try-catch를 사용하여 예외처리를 하지만 다음과 같은 차이점이 있다. fun parseInt(str : String) : Int{ try{ return str.toInt() }catch(e : NumberFormatException){ throw IllegalArgumentException("주어진 ${str}는 숫자가 아닙니다") } //catch 문에서 타입이 뒤에 위치하고, new를 사용하지 않음 } 문자를 숫자형태로 반환해주는 방식인데, 만일 숫자형태로 바꿀 수 없는 문자가 오면 예외처리를 하는 코드이다. 자바와 다르게 catch문에서 타입이 뒤에 위치하고, new를 사용하지 않는 차이점이 존재한다. 또한, try catch도 if el..
![[Kotlin/Basic] 코틀린에서의 반복문](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F6nHyC%2FbtrH0RajS09%2F516Y81XCDxQ6uGbIJ1f3I0%2Fimg.png)
[Kotlin/Basic] 코틀린에서의 반복문
1. for - each //for each val numbers = listOf(1L, 2L, 3L) // : 콜론 대신 in을 사용함 for(number in numbers){ println(number) } 자바에서는 : 콜론을 사용하여 표현했지만 코틀린에서는 in을 사용하여 numbers안에 있는 변수를 차례대로 출력한다! 2. for for(i in 1..3){ println(i) } //downTo, step도 함수 for(i in 5 downTo 1){ println(i) } //1부터 5까지의 공차1인 등차수열을 생성 //공차를 2로 바꿈 for( i in 1..5 step 2){ println(i) } 2-1. for문은 자바하고 많은 차이점이 있다. 첫 번째 for문을 보면 자바에서는 ..