달력

8

« 2020/8 »

  •  
  •  
  •  
  •  
  •  
  •  
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  •  
  •  
  •  
  •  
  •  


 

 

클래스 정의 - Java vs Kotlin

구분

Java

Kotlin

저장 파일명

파일명은 반드시 클래스 명과 동일하게 저장해야 합니다.

클래스 명과 달라도 상관없습니다.

객체 생성

new 키워드와 함게 생성자 함수를 호출

new 키워드없이 생성자 함수를 호출

최상위 슈퍼클래스

java.lang.Object

kotlin.Any

Method Overriding

@Override 어노테이션을 통한 재정의

open override 키워드을 통한 재정의

Variable Overriding

-

val/var앞에 override 키워드를 붙여 재정의

접근제한자

private

default

protected

public

private

protected

internal

public

 

 


'Development > Kotlin' 카테고리의 다른 글

Kotlin - 논리 타입(Boolean)  (0) 2019.08.06
변수 오버라이딩 - override property  (0) 2019.07.21
클래스 정의 - Java vs Kotlin  (0) 2019.07.19
*배열명  (0) 2019.07.11
문자열 배열  (0) 2019.06.26
Extensions  (0) 2019.06.18
Posted by codedragon codedragon

댓글을 달아 주세요

2019. 7. 11. 01:30

*배열명 Development/Kotlin


 

 

*배열명

·       spread 연산자 펼침 연산자

·       다른 배열을 이용해서 다른 배열을 만들 사용합니다.

 

 

 

spread 연산자를 통한 배열 생성

spread 연산자를 사용하여 기존을 배열의 요소로 새로운 배열을 생성합니다.

val arr1 = arrayOf<String>("pineapple", "papaya", "banana")

val arr2: Array<String> = Array(2, {"fruit"})

 

val arr4 = arrayOf<String>(*arr1, *arr2)

println("arr4: ${arr4.joinToString(", ")}")

arr4: pineapple, papaya, banana, fruit, fruit

 

 


'Development > Kotlin' 카테고리의 다른 글

변수 오버라이딩 - override property  (0) 2019.07.21
클래스 정의 - Java vs Kotlin  (0) 2019.07.19
*배열명  (0) 2019.07.11
문자열 배열  (0) 2019.06.26
Extensions  (0) 2019.06.18
함수 오버라이딩 - override fun  (0) 2019.06.11
Posted by codedragon codedragon

댓글을 달아 주세요



 

 

문자열 배열

·       문자열 배열은 배열의 요소로 문자배열을 가지는 2차원 배열과 비슷합니다.

 

Array<String> Array(Array<Char>)

 

Array<Char>

Array<Char>

Array<Char>

...

 

 

 

 

 

 

[][]

·       문자열은 문자배열이므로 배열로 문자열의 문자에 접근할 있습니다.

·       해당 문자열을 가지는 배열에서 [][] 기호를 통해 문자열 배열(stringArray) m번째 요소(문자열) n번째 문자를 의미합니다.

 

stringArray[m][n]

 

 

 


'Development > Kotlin' 카테고리의 다른 글

클래스 정의 - Java vs Kotlin  (0) 2019.07.19
*배열명  (0) 2019.07.11
문자열 배열  (0) 2019.06.26
Extensions  (0) 2019.06.18
함수 오버라이딩 - override fun  (0) 2019.06.11
함수내 함수 선언  (0) 2019.06.05
Posted by codedragon codedragon

댓글을 달아 주세요

2019. 6. 18. 00:30

Extensions Development/Kotlin


 

 

Extensions

·       상속관계없이 함수나 프로퍼티를 추가하는 의미합니다.

·       확장함수는 멤버처럼  닷연산자(.) 통해 정적으로 접근할 있습니다.

·       extension function, extension property

 

 

 

 

 

Extensions

https://kotlinlang.org/docs/reference/extensions.html


 

 

 

 


'Development > Kotlin' 카테고리의 다른 글

*배열명  (0) 2019.07.11
문자열 배열  (0) 2019.06.26
Extensions  (0) 2019.06.18
함수 오버라이딩 - override fun  (0) 2019.06.11
함수내 함수 선언  (0) 2019.06.05
label 문  (0) 2019.05.30
Posted by codedragon codedragon

댓글을 달아 주세요


 

 

함수 오버라이딩 - override fun

·       함수 재정의(Function Overriding) 하기 위한 키워드입니다.

·       부모클래스의 fun 키워드 앞에 open키워드를 붙여야 자식클래스에서 해당 함수를 override 키워드로 재정의해서 사용할 있습니다.

 

 

open class Parent{

open fun 함수명(매개변수명: 자료형타입, ...): 리턴타입

{

 

return 반환값

}

 

}

class Child: Parent(){

override fun 함수명(매개변수명: 자료형타입, ...): 리턴타입

{

// 함수 바디 재정의

 

return 반환값

}

 

}

 

 

 

 

final

·       오버라이드된 함수나 프러퍼티는 기본이 open이여서 이를 최종으로 만들어서 이상의 재정의를 금지시켜야 합니다.

·       final override 키워드를 붙이면 이상의 오버라이드할 없습니다.

class Child: Parent(){

final override fun 함수명(매개변수명: 자료형타입, ...): 리턴타입

{

// 함수 바디 재정의

 

return 반환값

}

 

}

class GrandChild: Child(){

ERROR - '함수명' in 'GrandChild' is final and cannot be overridden

override fun 함수명(매개변수명: 자료형타입, ...): 리턴타입

{

// 함수 바디 재정의

 

return 반환값

}

 

}

 

 

 



'Development > Kotlin' 카테고리의 다른 글

문자열 배열  (0) 2019.06.26
Extensions  (0) 2019.06.18
함수 오버라이딩 - override fun  (0) 2019.06.11
함수내 함수 선언  (0) 2019.06.05
label 문  (0) 2019.05.30
상호 운용성(Interop)  (0) 2019.05.24
Posted by codedragon codedragon

댓글을 달아 주세요


 

 

함수내 함수 선언

함수내에 함수를 다시 선언 있습니다.

// 기본 함수

fun 함수명(매개변수명: 자료형타입, ...): 리턴타입 //함수선언부

{ //함수의 시작

 

// 수행 구문;

 

return 반환값

 

} //함수의 종료

 

//함수내 함수 선언

fun 함수명(매개변수명: 자료형타입, ...): 리턴타입 //함수선언부

{ //함수의 시작

 

// 수행 구문;

 

// 함수내 함수(Local Function)

fun 함수명(매개변수명: 자료형타입, ...): 리턴타입 { 

// 수행 구문;

}

return 반환값

} //함수의 종료

 

 

 

 

 

 

코틀린에서 함수는 기본적으로 final 접근제한자를 가집니다.

final fun 함수명(매개변수명: 자료형타입, ...): 리턴타입

{

 

return 반환값

}

 

 


'Development > Kotlin' 카테고리의 다른 글

Extensions  (0) 2019.06.18
함수 오버라이딩 - override fun  (0) 2019.06.11
함수내 함수 선언  (0) 2019.06.05
label 문  (0) 2019.05.30
상호 운용성(Interop)  (0) 2019.05.24
Charsets  (0) 2019.05.17
Posted by codedragon codedragon

댓글을 달아 주세요

2019. 5. 30. 12:43

label 문 Development/Kotlin


 

 

label

·       break label

·       http://codedragon.tistory.com/8019

·       continue label

·       http://codedragon.tistory.com/8178

 

 


'Development > Kotlin' 카테고리의 다른 글

함수 오버라이딩 - override fun  (0) 2019.06.11
함수내 함수 선언  (0) 2019.06.05
label 문  (0) 2019.05.30
상호 운용성(Interop)  (0) 2019.05.24
Charsets  (0) 2019.05.17
Range, Range 형식  (0) 2019.05.10
Posted by codedragon codedragon

댓글을 달아 주세요


 

 

상호 운용성(Interop)

·       Kotlin Java와의 상호 운용성을 염두에 두고 설계되어진 언어입니다.

·       기존 Java코드는 Kotlin에서 그대로 호출 있으며 Java에서 Kotlin코드를 사용할 수도 있습니다.

 


'Development > Kotlin' 카테고리의 다른 글

함수내 함수 선언  (0) 2019.06.05
label 문  (0) 2019.05.30
상호 운용성(Interop)  (0) 2019.05.24
Charsets  (0) 2019.05.17
Range, Range 형식  (0) 2019.05.10
String template (문자열 템플릿)  (0) 2019.05.03
Posted by codedragon codedragon

댓글을 달아 주세요

2019. 5. 17. 12:00

Charsets Development/Kotlin


 

 

Charsets

·       문자셋

·       코드 체계표를 매핑해놓은 자료구조입니다.

 

http://bit.ly/2Cligi8


 

 


'Development > Kotlin' 카테고리의 다른 글

label 문  (0) 2019.05.30
상호 운용성(Interop)  (0) 2019.05.24
Charsets  (0) 2019.05.17
Range, Range 형식  (0) 2019.05.10
String template (문자열 템플릿)  (0) 2019.05.03
문자열 타입(String)  (0) 2019.04.28
Posted by codedragon codedragon

댓글을 달아 주세요


 

 

Range

·         배열(Array) 쓰임세가 비슷합니다.

·         비교가 가능한 (숫자) 나열로 유한한 구간을 가집니다.

·         일반적으로 구간(범위) 상하 경계값을 가집니다.

 

https://kotlinlang.org/docs/reference/ranges.html

 

 

 

 

 

Range 형식

·         .. 기호를 사용하여 범위를 표시합니다.

·         .. 연산자로 표현된 것을 range expression이라고 합니다.

 

 

범위시작숫자..범위끝숫자

 

 

코드

설명

1..100

1이상 100이하의 자연수를 의미합니다.

 

 

 

 


'Development > Kotlin' 카테고리의 다른 글

상호 운용성(Interop)  (0) 2019.05.24
Charsets  (0) 2019.05.17
Range, Range 형식  (0) 2019.05.10
String template (문자열 템플릿)  (0) 2019.05.03
문자열 타입(String)  (0) 2019.04.28
is - 타입 체크 연산자  (0) 2019.04.23
Posted by codedragon codedragon

댓글을 달아 주세요