Java/Kotlin
6 posts
[Kotlin] 코드 제어하는 방법

제어문 If문, Expression 과 Statement 기본적인 if-else의 문법은 동일하다. Java에서 if-else는 Statement이지만 Kotlin에서는 expression이다. 즉 삼항연산자 처럼 값을 리턴할 수 있다. 따라서 삼항연산자가 없음 in 연산자를 활용 가능 switch 와 when switch case 문 대신에 when으로 kotlin에서는 대체되었으며 조건부를 다양하게 사용할 수 있다. image1 is 문, ..문 등 사용 와 같이도 쓸 수 있음 when뒤에 소괄호없이 바로 조건부와 결과로만 when절을 구성할 수도 있다. Enum 클래스, Sealed 클래스와 함께 사용할 경우 더욱 진가가 발휘된다. 반복문 for-each 문 ( 향상된 for문 ) ’:’ 대신 ‘in’을 쓰는 정도만 다르다. 전통적인 for문 in을 사용한여 범위를 표현한다. progression, range를 활용한 등차수열을 쓴다. downTo, step 등의 표현 예외 …

April 29, 2024
Java/Kotlin
[Kotlin] 객체지향 프로그래밍(OOP)

1. 클래스 클래스와 프로퍼티 생성자와 int 커스텀 getter, setter backing field 클래스와 프로퍼티 Java의 경우 : Kotlin의 경우 생성자가 classname 옆에 오지만 생략가능하며, 생성자에서 field를 선언할 수 있기 때문에 중괄호를 오히려 생략할 수 있다. val, var로 선언만하면 됨 getter, setter는 ’.’을 통해서 바로 참조 가능 생성자와 init kotlin에서는 java의 constructor에서 보통 작성하던 검증 로직을 init에서 할 수 있다. kotlin에서 주 생성자가 아닌 부 생성자는 클래스 내에서 constructor 키워드를 통해 구현되어야 한다. 주 생성자는 반드시 존재해야 하지만 파라미터가 하나도 없는 경우 생략 가능 부 생성저는 최종적으로 this(주생성자)를 호출해야 한다. 부 생성자에는 중괄호 block을 통해 코드를 삽입할 수 있다. 그러나 부 생성자는 일반적으로 사용되지 않고, 주로 defau…

April 25, 2024
Java/Kotlin
[Kotlin] 코드 제어하는 방법

제어문 If문, Expression 과 Statement 기본적인 if-else의 문법은 동일하다. Java에서 if-else는 Statement이지만 Kotlin에서는 expression이다. 즉 삼항연산자 처럼 값을 리턴할 수 있다. 따라서 삼항연산자가 없음 in 연산자를 활용 가능 switch 와 when switch case 문 대신에 when으로 kotlin에서는 대체되었으며 조건부를 다양하게 사용할 수 있다. is 문, ..문 등 사용 와 같이도 쓸 수 있음 when뒤에 소괄호없이 바로 조건부와 결과로만 when절을 구성할 수도 있다. Enum 클래스, Sealed 클래스와 함께 사용할 경우 더욱 진가가 발휘된다. 반복문 for-each 문 ( 향상된 for문 ) ’:’ 대신 ‘in’을 쓰는 정도만 다르다. 전통적인 for문 in을 사용한여 범위를 표현한다. progression, range를 활용한 등차수열을 쓴다. downTo, step 등의 표현 예외 try ca…

November 18, 2023
Java/Kotlin
[Kotlin] 변수, 타입, 연산자

변수 var과 val 자바에서는 불변해야 하는 변수에 final과 같은 키워드를 사용하지만, 코틀린에서는 변수에는 var, 상수에는 val을 사용한다. 자동 타입 추론 그러나 초기화를 하지 않고 선언만 하는 경우에는 명시적으로 type을 줘야 한다. 선언과 초기화 val 컬렉션에 element를 추가할 수 있다. 모든 변수를 우선 val로 만들고 꼭 필요한 경우만 var로 선언한다. 자바의 long / Long 과 같은 구분이 없고 그냥 하나로 통일된다. 즉 primitive type, reference type의 구분이 따로 없고 boxing과 unboxing을 고려하지 않아도 되도록 kotlin이 내부적으로 알아서 처리한다. nullable 자바는 Reference type은 null이 할당될 수 있지만 kotlin에서는 null이 들어갈 수 있는 변수라면 ‘타입?‘를 사용함으로써 구분한다. 객체의 인스턴스화를 할 때 ‘new’ 키워드를 사용하지 않는다. Null Kotlin에…

November 17, 2023
Java/Kotlin
[Kotlin] 코드 제어하는 방법

제어문 If문, Expression 과 Statement 기본적인 if-else의 문법은 동일하다. Java에서 if-else는 Statement이지만 Kotlin에서는 expression이다. 즉 삼항연산자 처럼 값을 리턴할 수 있다. 따라서 삼항연산자가 없음 in 연산자를 활용 가능 switch 와 when switch case 문 대신에 when으로 kotlin에서는 대체되었으며 조건부를 다양하게 사용할 수 있다. image1 is 문, ..문 등 사용 와 같이도 쓸 수 있음 when뒤에 소괄호없이 바로 조건부와 결과로만 when절을 구성할 수도 있다. Enum 클래스, Sealed 클래스와 함께 사용할 경우 더욱 진가가 발휘된다. 반복문 for-each 문 ( 향상된 for문 ) ’:’ 대신 ‘in’을 쓰는 정도만 다르다. 전통적인 for문 in을 사용한여 범위를 표현한다. progression, range를 활용한 등차수열을 쓴다. downTo, step 등의 표현 예외 …

April 28, 2023
Java/Kotlin
[Java] 어노테이션이란(Annotation)? 커스텀 어노테이션을 만들어 보자

어노테이션이란 무엇인가? 어노테이션은 자바에서 compile, run타임 시 코드를 어떻게 처리할 것인 지에 대한 메타데이터라고 볼 수 있다. 어노테이션의 목적 컴파일러에게 문법 에러를 체크하기 위한 정보 제공 (ex. @Override ) 개발 툴에서 코드를 자동으로 생성할 수 있는지 정보 제공 런타임 시 특정 기능을 실행하기 위한 정보 제공 ( ex. @Controller) 커스텀 어노테이션 만들기 선언 아래와 같이 MyAnnotation을 간단하게 생성할 수 있다. Element 멤버 외부의 값을 입력받을 수 있게 하는 역할 element 선언 아래와 같은 형태로 element 타입, 이름, default값을 설정하여 선언할 수 있다. 물론 default 값은 생략 가능하다. 그리고 이 어노테이션을 외부에서 쓸 때, 아래와 같이 element값을 지정할 수 있다. 기본 element : value 어노테이션에는 value라는 기본 element가 존재하며 아래와 같이 설정할 …

February 17, 2022
Java/Kotlin