일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- golang
- 파이썬
- adapter
- 싱글 스레드
- Overloading
- 연산자
- ListView
- 패널 교체
- 자바스크립트
- 노트북
- Array
- go
- 오버로딩
- Kotlin
- as?
- 자바
- node.js
- HP
- Android
- 코틀린
- 함수
- Java
- js
- javascript
- 안드로이드
- var
- 노트북 추천
- Python
- 배열
- 리스트 뷰
- Today
- Total
목록코틀린 (20)
Bbaktaeho
시작하기에 앞서 필자의 java 언어 수준은 학교 전공 수업인 java언어와 jsp 프로그래밍에서 배운 것으로 멈춰있고 kotlin 언어의 수준은 자바와 마찬가지로 프로젝트 경험 없이 기초만 배운 상황입니다. 따라서 개인적인 견해가 거의 없으므로 찾아본 참고 자료를 토대로 글을 이어가겠습니다. 잘못된 부분이 있다면 댓글로 피드백 부탁드립니다. 자바의 특징 객체 지향 방법론을 사용하며 여러 운영체제에서 실행될 수 있는 언어 자바 언어의 특징에 대해서 간단하게 보도록 하겠습니다. 멀티 플랫폼 크로스 플랫폼이라고도 불리는데 JVM(Java Virtual Machine)만 설치되어 있으면 어떤 운영체제에서도 애플리케이션을 작동시킬 수 있습니다. 메모리 관리 자바는 포인터 개념이 없고 자동으로 메모리를 관리합니다..
멤버 함수)클래스에서 생성된 속성과 함수를 멤버라고 한다.여기서 멤버 함수는 인스턴스가 할 수 있는 기능을 나타낸다.함수를 정의하는 방법 그대로 클래스 내부에 정의해주면 된다.(함수 정의하는 법) https://bbaktaeho-95.tistory.com/25클래스 내부에 멤버 함수를 정의해보자.fun main() { val MyCar = Car() MyCar.printCar()}class Car{ var engine: String = "현대" //클래스의 멤버 변수 var tire: String = "한국타이어" //클래스의 멤버 변수 var door: Int = 4 //클래스의 멤버 변수 fun printCar() { println("엔진은 ${this.engine}, 타이어는 ${this.tire..
코틀린에서 속성이란)최상위 변수(함수나 클래스 외부에 정의된 변수)나 클래스의 멤버 변수로 선언하면 속성으로 간주된다. 클래스의 멤버 변수는 모두 private 제한자로 지정된다. 따라서 해당 클래스의 내부의 게터와 세터를 통해서만 속성을 참조할 수 있다.val a : String = "최상위" //최상위 변수(게터만 생성)fun main() { val MyCar = Car("GDI") val YourCar = Car()}class Car{ var engine: String //클래스의 멤버 변수(게터,세터 생성) var tire: String //클래스의 멤버 변수(게터,세터 생성) var door: Int //클래스의 멤버 변수(게터,세터 생성) constructor(engine: String =..
클래스)class 키워드를 사용하여 선언하며 멤버 속성과 멤버 함수를 가질 수 있다.class 클래스이름 {멤버들 구현}멤버를 가지고 있지 않으면 중괄호를 생략 가능하다.class 클래스이름기본 생성자)코틀린에서 기본 생성자는 클래스 헤더 안에 정의한다.class 클래스이름(속성) {}예시로 Car 클래스를 정의해보겠다.class Car(val engine:String, val tire:String){}위와 같은 형식을 사용하면 Car 클래스의 속성도 자동으로 생성하고 초기화해 준다.Car 클래스의 객체를 생성할 때 engine과 tire 즉, Car 클래스의 속성을 초기화 시켜줄 수 있다.사실 위의 예제 코드에서 constructor 키워드가 생략되었다.class Car constructor(va..
함수)코틀린에서 함수를 선언하는 법은 fun 키워드를 사용해서 선언하면 됩니다.fun 함수명(인수1 : 타입, 인수2 : 타입, 인수3 : 타입, ......) : 리턴 타입코틀린에서 함수는 코틀린 파일에 바로 정의할 수 있으며 클래스의 멤버나 다른 함수 내부에도 정의할 수 있다. 자바는 클래스 내부에서만 정의하게 되어있다.간단한 함수 선언 예제를 보자.fun function(a:Int,b:Int) : Int { return a+b}Colored by Color Scripterfunction은 함수의 이름이며 a, b는 함수의 매개변수다. 이 함수의 반환형은 Int 타입으로 선언되었다.좀 더 간단하게 변경하면fun function(a:Int,b:Int) = a+b코틀린 함수도 리턴 타입을 추론할 ..
스마트 캐스트)스마트 캐스트는 코틀린 컴파일러가 똑똑하게 자동으로 변환해주는 기능이다.명시적 타입 변환할 때 사용하는 as와 as?를 사용한다.(as, as? 연산자) https://bbaktaeho-95.tistory.com/21 스마트 캐스트는 두 가지 경우에 자동으로 수행되는데 첫 번째로 변수의 값이 null 인지 확인할 때 두 번째로 is, !is 연산자로 변수 타입을 확인할 때 자동으로 수행된다.먼저 null 인지 확인하는 예제를 보자.fun main() { val name : String? = "임태호" if (name != null) println(name.length)}Colored by Color Scripter실행 결과는3변수 name은 null이 가능한 String 타입이다. 하지만..
자바에서 런타임 시 발생할 수 있는 NullPointerExeption을 코틀린에서 런타임이 아닌 컴파일 시점에서 미리 방지할 수 있게 했다.여기서 NullPoiinterExeption은 객체를 참조하는 변숫값이 null이라서 해당 객체의 메서드를 호출하거나 데이터를 참조할 수 없을 때 발생하는 예외이다. 쉽게 말해 빈 저금통에 동전을 찾는 느낌..?null 타입)널이 가능한 타입이다. 모든 타입 이름 끝에 ? 을 붙이면 된다.예를 들어 val a : Int? = null 코드를 보면 변수 a가 Int 타입으로 보이지만 ? 때문에 null이 가능한 Int 타입이라고 할 수 있다.다른 코드를 보자.123456789fun main() { var a : Int = 10 a = null //에러 var b ..
break와 continue 문은 루프의 실행을 제어할 때 사용하며 특히 여려 개의 루프가 중복되어 있을 때 유용하게 사용할 수 있다.break, continue)break나 continue 문을 라벨과 함께 사용하면 중복된 로프 중에서 라벨이 지정된 루프를 빠져나가거나 라벨이 지정된 루프의 그다음 반복을 계속 실행할 수 있다.간단한 예제를 보자.12345678910111213fun main(args: Array) { for (i in 0..9){ if (i == 4) break print(i) } println() for (i in 0..9){ if (i == 4) continue print(i) }}cs실행 결과는120123012356789cs첫 번째 반복문을 보면 i가 4일 때 루프를 빠져나온다..