일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 이모지메모
- recyclerview
- 공자명언
- 벤자민플랭클린
- 1인개발자
- Coroutine
- Linux
- 명심보감
- FSM
- DART
- 파이썬
- Freesound
- 소울칼리버6
- 명언모음
- 오픈소스
- jetpack compose
- androidx
- Streaming
- 좋은글필사하기
- 공부집중
- Android
- 코틀린
- Flutter
- kotlin
- 이모지
- 장자명언
- bash
- ASMR
- Firebase
- 넷플릭스
- Today
- Total
목록강좌, 연재/앱으로 배우는 kotlin (26)
Vintage appMaker의 Tech Blog
식별자 없이 실행 가능한 함수 표현식. 가독성을 위해 코드를 줄이는 것. 요즘 언어의 유행. 특히 자바에서는 필요한 요소였음. java8부터 지원. 함수형 프로그래밍에서는 자주사용됨. 일반적인 형식은.. { 변수정의 -> 함수구현 } 함수형 변수 선언 var 이름 = { 변수정의 -> 함수구현 }; 함수형 변수 형 선언. C/C++ 함수포인터와 유사함. 이름 : (변수정의)->리턴형; package advance /** * Created by snake on 17. 5. 23. */ // 아직 람다식에 익숙하지 않다. // 코딩을 짧게 해주는 인라인함수 정도로만 이해하고 사용한다. fun main(args : Array ){ // 가장 심플한 람다식 표현 var 함수형변수 = {a: Int, b: Int..
class명 앞에 사용해서 static class로 선언 class 내부의 특정멤버들만 static (companion object) 이름없는 객체(클래스에서 상속)를 처리할 때 object 싱글톤 { var 메시지출력 = { msg : String -> println(msg) } } class 일반클래스{ var msg: String = "일반객체로 생성하면 이 변수를 액세스 가능함" // companion object Factory {} 안에서 구현해야 static 가능 companion object { var 스태틱변수 = "스태틱변수"; fun 이거스태틱임()= println("이거스태틱 함수임"); } } abstract class fake클릭핸들러{ var msg : String = "abst..
interface는 interface 이름 {} 으로 정의한다. 오버라이드하기 위해 open이나 기타 지시자로 정의할 필요가 없다. abstract class는 구현상속할 메소드도 abstract로 정의해야 한다. // 정의 abstract class 추상화클래스{ abstract fun 메소드(); } ... // 구현상속 class 추상화클래스구현 : 추상화클래스(){ override fun 메소드() = println("상속구현했음"); } static을 사용하려면 클래스 내에 companion object{}를 만들고 그 안에 메소드나 멤버필드를 정의한다. fun main(args : Array){ // 인터페이스 인터페이스구현().반드시구현해야하는함수(); var obj : 인터페이스; // 추..
선조 클래스에서 메소드와 필드를 open으로 정의한다. 상속받은 클래스에서 override로 정의한다. 오버로딩은 자바와 같다. 같은 이름의 다른 파라메터를 받는 메소드를 정의하면 된다. fun main(args : Array){ var 오브젝트1 = baseClass(); 오브젝트1.func1(); var 오브젝트2 = childClass(); 오브젝트2.func1(); 오브젝트2.func2(); 오브젝트2.func2("문자열 파라메터"); 오브젝트2.func2("문자열 파라메터", 100); } open class baseClass{ // 상속받은 클래스에서 오버라이드하려면 선조클래스에서 open으로 정의. open var name = "base"; open fun func1() = println(t..