전체 글 (105) 썸네일형 리스트형 [TEKHIT] 중첩 클래스 & NULL & Casting 출처 : Tekhit Android App School / Soft campus 윤재성 강사님 🎉 중첩 클래스(Inner Class) inner 지시자를 사용해 클래스안에 작성하는 클래스 내부 클래스의 객체를 생성하려면 외부 클래스를 통해 참조해야 합니다. class Outer1{ // 프로퍼티 var outerValue1 = 100 // 메서드 fun outerMethod1(){ println("Outer1의 outerMethod1") // println("innerValue : $innerValue1") // innerMethod1() } var innerValue1 = 200 fun innerMethod1(){ println("Inner1의 innerMethod1 입니다") } inner class.. [TEKHIT]Companion & Data Class & Generic 출처 : Tekhit Android App School / Soft campus 윤재성 강사님 🎉Companion Object Java의 static Kotlin에서 정적 멤버를 생성하는 클래스 프로그램 전체에서 오직 하나만 만들어 사용하는 변수 객체 생성없이 바로 사용할 수 있는 요소 객체의 멤버로 취급되지 않습니다. fun main(){ println(kotlinValue1) println(kotlinMethod()) } class TestClass2{ companion object{ var kotlinValue1 = 1000 fun kotlinMethod() = println("kotlin Method") } } 🎉 Data Class 객체의 맴버를 보다 쉽게 관리할 수 있게 만든 클래스 data .. [TEKHIT] Any & This Super 출처 : Tekhit Android App School / Soft campus 윤재성 강사님 🎉 Any Kotlin에서 사용하는 모든 클래스의 부모 클래스입니다. 클래스 작성시 상속 관계를 설정하지 않으면 자동으로 Any Class를 상속합니다. 모든 객체는 Any Type에 담을 수 있습니다. 자바의 Object와 같은 기능을 합니다. fun main(){ val a1:Any = TestClass1() val a2:Any = TestClass2() } // 상속 관계를 설정하지 않았지만 Any를 상속받는다. class TestClass1 class TestClass2 🎉 This 객체 자기 자신을 가르키는 키워드 클래스의 프로퍼티와 매개변수의 이름이 같은 경우 이를 구분하기 위해 사용 fun main.. [Android] Jetpack WorkManager 📕 WorkManager란? Android Jetpack Library의 WorkManager는 Background Task를 위해 만들어졌습니다. 안드로이드 M(API 23) 부터 Background Task 제약 사항들이 점차 추가되며 개발자들은 Service, JobSchduler, JobDispatcher등을 사용해 개발했지만 API의 문제들로 인해 WorkManager가 등장하게 되었습니다. 이 글에선 기존 API의 문제점과 Workmanager에 대해 알아보겠습니다. 🤔 Background 상태의 앱이 왜 자동으로 종료될까요 ? 안드로이드 커널은 리눅스 커널은 기반으로 개발 되었지만 가장 큰 차이점은 Swap Space가 존재하지 않습니다. 📌Swap Space 주기억장치(RAM)의 용량이 부.. [Android]Android Memory Process [안드로이드 공식 문서] 프로세스 간 메모리 할당 | App quality | Android Developers 프로세스 간 메모리 할당 컬렉션을 사용해 정리하기 내 환경설정을 기준으로 콘텐츠를 저장하고 분류하세요. Android 플랫폼은 사용 가능한 메모리가 있다는 것은 메모리 낭비라는 전제 하에 실 developer.android.com 📕 개요 공식 문서의 내용을 바탕으로 안드로이드 시스템에서 메모리 부족 상황에서 시스템이 어떻게 반응하고, 어떻게 메모리를 효율적으로 관리하는지에 대한 기본 개념을 알아보겠습니다. 안드로이드 플랫폼은 사용 가능한 메모리가 있다는 것은 자원을 낭비한다는 전제 하에 실행되기 때문에 항상 사용 가능한 모든 메모리를 사용하려 합니다. 우리가 앱을 닫은 후에도 다시 전환할 수.. [TEKHIT] Abstract & Interface 출처 : Tekhit Android App School / Soft campus 윤재성 강사님 추상 클래스와 인터페이스는 가장 햇갈리기 쉬운 친구들 입니다. 닮아도 너무 닮았죠😮 이 영상의 18분 20초를 보면 설명이 너무 잘 되있어서 한번씩 보시면 너무 좋습니다. 귀찮아서 안보실 분들을 위해 설명드리겠습니다. 추상 클래스 : abstract 지시자를 사용하며 하나 이상의 추상 메소드가 존재합니다. 인터페이스 : Interface 지시자를 사용하며 모든 클래스가 추상 클래스로 구성되있습니다. 차이 : 추상 클래스는 상속을 통해 기능을 재사용하고 확장, 인터페이스는 인터페이스 추상 메소드에 구현한대로 함수의 기능을 강제하기 위해 사용합니다. 🎉 Abstact 추상 메소드 : 간단한 기능만 작성하고 실제로 .. [TEKIT] 지연 초기화와 오버라이딩 출처 : Tekit Android App School / Soft campus 윤재성 강사님 🎉 지연 초기화란 ? 코틀린과 자바의 가장 큰 차이는 코틀린은 개발자가 값을 초기화 하지 않고 사용하는 것을 방지하기 위해 프로퍼티를 정의하면 무조건 값을 지정해 줘야 합니다. 그래서 코드를 수행해 얻은 값을 프로퍼티에 저장해야 하는 경우 프로퍼티에 일단 아무 값이나 넣어두고 이후에 저장해줘야 합니다. 이런 이유로 코틀린에선 지연 초기화를 이용해 프로퍼티를 정의할 때 초기값을 지정하지 않아도 되게 해줍니다. class TestClass1{ var a1:Int = 100 var a3:Int var a4:Int init{ a4 = 400 } constructor(){ a3 = 300 } ] a1 : 초기 값을 지정해.. [TEKHIT] 상속과 프로퍼티 출처 : Tekhit Android App School / Soft campus 윤재성 강사님 🎉 상속이란? 하나의 클래스가 다른 클래스의 기능을 물려받는 개념입니다. 클래스를 통해 객체를 생성하면 자식 클래스의 내용과 부모 클래스의 기능을 동시에 가질 수 있습니다. 기능을 물려주는 부모 클래스는 Super Class, 물려 받는 자식 클래스는 Sub Class 라고 합니다. 코틀린에서 부모 클래스의 역할을 할 수 있도록 하겠다면 open 키워드를 붙혀줘야 합니다. open class SuperClass1{ var superA1 = 100 fun superMethod1(){ println("SuperClass1의 superMethod1") } } // class 클래스이름 : 부모클래스이름() class.. 이전 1 ··· 5 6 7 8 9 10 11 ··· 14 다음