728x90
반응형
728x90
반응형
상속 kotlin은 기본적으로 클래스간의 상속이 금지되어있다. 상속을 하려면 이 기본값을 상속금지에서 상속가능으로 변경해주어야 한다. 변경해줄 때 클래스 앞에 open을 붙인다. // open을 붙인다 open class Animal(var name:String, var age:Int, var type:String){ fun introduce(){ println("[$type] Hi my name is $name and I'm $age!") } } //상속을 받을 때 안의 매개변수는 상속을 받는 것이므로 var을 선언하지 않고 매개변수의 이름만 선언한다. //선언을 할 때 사용할 기본값만 선언하고 상속을 받으면서 고정될 기본값을 다음 : 뒤에 붙인다. class Dog(name:String, age:In..
객체지향, 즉 데이터를 객체로 취급하여 프로그램에 반영한 것으로 객체들의 상호작용을 통해 프로그램이 동작하는 것을 말한다. 객체지향의 코드의 재사용, 변경의 특징을 이용해서 다음과 같은 클래스를 만들 수 있다. class Food( // 콤마를 사용해 변수를 초기화하고 var name: String, var calories: Int ){ // 다음 중괄호안에 클래스 함수를 써주고 변수명을 참조할 때는 $를 쓴다 = jQuery랑 비슷함 fun brief(){ println("Name : $name Calories : $calories" ) } } fun main(){ var a = Food("Chicken", 1500) var b = Food("Pizza", 1000) // 만든 함수를 호출할 때는 .뒤..
특정한 코드를 지정한 숫자만큼 반복한다. while과 do~while의 사용법은 자바와 같지만 for은 매우 다르니 아래의 코드를 참조 fun main(){ var a = 0 while(a
다른 언어들과 같이 when, if등 조건연산자 사용이 가능한데 kotlin에서는 사용 방식이 조금 다르다. 다르지만 더 가독성있고 간편하게 바뀐 느낌이 든다. 아래 예시를 참고하여 사용하자 fun main(){ var a = 1 var result = when(a){ 3 -> println("1이 맞습니다") // 위의 조건문이 True일 경우 아래 True문은 실행되지 않는다. is Int -> println("Int형이 맞구요") !is Int -> println("Int형이 아닙니다") else -> println("다 틀려요!!") } println(result) } 위의 코드는 출력된 값을 result에 담아서 사용했지만, 만약 결과값(println)만 필요한 경우 아래와 같이 바꾸어서 사용한..
프로그래밍 언어의 꽃인 함수를 만드는 방법을 알아보자 변수의 명칭 타입을 항상 variable의 약자인 var로 지정했듯이 function도 fun으로 축약하여 표시한다. 예시로 더하기 메서드, 함수를 만들어본다면 아래와 같이 만들 수 있다. fun add(a:Int, b:Int, c:Int):Int{ return a+b+c } fun main(){ var a = add(1, 2,3) println(a) } 단순하게 abc의 int 값을 더해서 출력하는 메서드. 이런 간단한 메서드 같은 경우 아래와 같이 한줄로 표현할 수 있고 뒤에 붙은 :Int의 반환형을 생략할 수 있다. (타입추론 = 컴파일러에게 반환값을 유추하게 하여 자동으로 반환값을 할당하게 한다) fun add(a:Int, b:Int, c:In..
명시적 형변환이란 각기 다른 타입의 변수를 할당하는 것을 말한다. 자바 같은 경우 암묵적 형변환을 인정해주지만 kotlin에서는 형변환의 오류를 막기위해 꼭 형변환을 해주어야 한다. // 명시적 형변환 var b : Float = 123.3f // toLong 등 형변환의 타입에 맞추어야 한다 var a : Long = b.toLong() 배열을 지정할 때에는 아래의 코드를 실행하여 배정한다. 비어있는 리스트를 만들기 위해 arrayofNulls를 사용한다. array를 사용할 때는 다른 언어들처럼 [] 인덱싱을 사용하여 값을 출력한다. []를 사용하여 특정 인덱스에 값을 배정할 수도 있다. var arr = arrayOf(1,2,3,4,5) var nullArr = arrayOfNulls(5) prin..
제일 많이 사용되는 개발환경인 android studio와 intellij 중 android studio를 사용하여 문법을 연습 kotlin은 자바와 많이 비슷한 부분이 있어서 만약 자바를 배우신 분이라면 학습하기가 용이할 것이다. 기본적으로 fun main()이라는 메서드를 실행하여 코드를 실행한다. fun main(){ // 자바와는 다르게 = 이 아닌 : 로 변수의 타입을 할당하고 =를 사용하여 값을 배정한다 var a : Int = 123 print(a) } 자바와 다른점은 ; 을 생략해도 컴파일러 자체에서 추가해주고 모든 변수가 initialized, 즉 초기화되어야 사용이 가능하다. 초기화가 필수이므로 kotlin은 null 값 배정이 허용되지 않는다. initialized가 필수인 조건이므로..