Kotlin 지연 초기화 Kotlin은 변수를 선언할 때 값을 무조건 설정해야 하는데, 이를 지연시키는 것을 지연 초기화라고 한다. 변수 초기화 var v1 Kotlin: This variable must either have a type annotation or be initialized 코틀린은 변수를 초기화 하지 않고 그냥 선언만 하게 될 경우, 해당 변수에 어떤 타입이 들어올지 예상하지 못하므로, 타입을 기재를 해주던지, 초기화를 수행해주어야 한다. var v1:Int or var v1 = 100 으로 사용해주어야 한다. Property 초기화 main 함수 내에서는 타입만 지정해도 되지만, 클래스 내부에서는 변수가 Property 로 자동 지정이 되므로, 추상화또는 초기화를 해주어야 한다. fun main () { var a1:Int // No Error val obj = TestCalss1() } class TestCalss1{ var a1:Int // Error / Kotlin: Property must be initialized or be abstract } Kotlin: Property must be initialized or be abstract Class Init init 메서드를 통해서 변수 초기화를 할 수 있다. 그러나, 변수 선언시 타입은 명시 해주어야 한다. fun main () { val obj1 = TestCalss1() println ( "obj1.a1 : ${ obj1. a1 } " ) } class TestCalss1{ var a1 = 100 // 타입 생략이 가능하다 . var a2 // 타입 생략이 불가능 하다 . 타입을 추론하지 못하기 때문에 init { a2 = 100 } } lateinit var 로 선언된 변수의 초기화를 뒤로 미룰 수 있다. ...
Kotlin 객체지향프로그래밍 Kotlin 에서의 객체지향프로그래밍에 대해서 알아보자. 객체지향프로그래밍 Kotlin 은 기본적으로 객체지향프로그래밍이지만, 굳이 객체를 사용하지 않아도 된다. Java 처럼 Class 가 무조건 있어야 하는것은 아니다. class 변수 선언시에 "new" 지정자를 생략해도 된다. 겉보기엔 일반 변수 처럼 사용할 수 있다. class 의 멤버변수를 설정하면 내부적으로 set, get 메소드가 자동 생성된다. class 에서 함수는 함수라고 부르지 않고, 멤버 메서드라고 한다. 객체는 클래스를 통해서 생성할 수 있다. 객체가 다 수 필요하다면 같은 클래스로 객체를 무수히 만들어서 사용하면 된다.
Kotlin 언어 소개 Java 대체 언어로 많은 주목을 받고 있다. 2017년 Google IO 행사에서 안드로이드 개발 공식 언어로 Kotlin 을 소개하였습니다. 구글에서 "GO" 언어를 만들어서 채택할려고 했으나, Java 의 쓰임새와 너무 달라서 Kotlin 으로 대체하였습니다. http://kotlinlang.org Kotlin 동작 원리 Kotlin 언어는 개발자를 위한 코드입니다. Java 는 JVM 위한 코드이고, C 는 실행을 위한 Binary Code를 위한것이였는데, Kotlin 은 개발자의 편의성을 위한 부분이 강조 되었다. Kotlin 은 컴파일 시점에서 Java , C , JavaScript 로 변환되어진다. 개발자는 어떤 프로젝트를 선택함에 따라서 코드의 결과물이 달라진다. 현재는 안드로이드 개발에서 Java 를 대신해서 사용하고 있다. Kotlin 언어 특징 Java 언어와 비교하여 매우 간단한 문법을 제공한다. NULL 안정성을 위해서 Null Point Exception 이 발생하지 않는다. 예외처리 ( Try - Catch ) 등을 강제하지 않는다. 객체지향, 함수형 프로그래밍 방식 모두 가능하다. Kotlin 개발 분야 Kotlin for Server Side Kotlin for Android Kotlin for JavaScript Kotlin for Native Kotlin for Data Science
댓글
댓글 쓰기