일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- JS
- 코틀린
- JavaScript
- button
- 오버라이딩
- RecyclerView
- Kotlin
- 리액트
- SpringBoot
- TextView
- scrollview
- 랜덤번호
- Hook
- Linux
- npm
- 구글맵스
- Java
- 자바스크립트
- nodejs
- 안드로이드
- React
- 스프링부트
- TypeScript
- 랜덤넘버
- Android
- stylesheet
- fragment
- GoogleMaps
- array
- Javscript
- Today
- Total
목록Kotlin (37)
타닥타닥 개발자의 일상
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/XSb6o/btrstYu4qau/GorF0uKLQfBTrUohcKKxBk/img.jpg)
activity_main.xml build.gradle(:app) plugins { id 'com.android.application' id 'kotlin-android' } android { compileSdk 32 defaultConfig { applicationId "com.example.sample12" minSdk 21 targetSdk 32 versionCode 1 versionName "1.0" testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" } buildTypes { release { minifyEnabled false proguardFiles getDefaultProguardFile('proguard-android-..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/bvl8sc/btrsnmWBUou/3pby4O4ohQMzMBjWSjGOJ1/img.jpg)
숫자를 입력한 다음 + 버튼을 누르면 증가하고 -버튼을 누르면 감소하는, reset버튼을 누르면 숫자가 0으로 초기화 되는 카운터를 만들것. activity_main.xml 코드화면 activity_main.xml 코드화면 MainActivity.kt package com.example.counter import android.content.DialogInterface import androidx.appcompat.app.AppCompatActivity import android.os.Bundle import android.util.Log import android.widget.Button import android.widget.EditText import android.widget.TextView im..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/DZqM2/btrr4wSEKda/c4a7i9gQTi9xO4bs4dWiok/img.png)
만들 조건 Dao, Dto 만들기. Dto는 Human Dto에서 상속 받은 Pichter Dto, Batter Dto 사용하기. File 클래스 만들어서 저장 기능 만들기. Dao, Dto, File 별로 별개의 패키지. Human클래스를 상속 받는 Pichter과 Batter는 같은 Dto 패키지 안에 생성. DTO 패키지 부모 클래스인 Human클래스 package dto open class Human(var number:Int=0, var name:String = "", var age:Int = 0, var height:Double = 0.0) { //자식 클래스에서 상속을 반드시 할수 있도록 생성자() 안에 name, age,height 속성을 넣는다. //상속 가능하기 위해 open이라는 단어..
fun main(args: Array) { //Map -> (key, value) -pair // val langMap: Map = mapOf( 1001 to "kotlin",1002 to "Java", 1003 to "react") for ((key, value) in langMap){ println("key=$key, value=$value") } /* 출력값 key=1001, value=kotlin key=1002, value=Java key=1003, value=react */ println(langMap[1002]) //출력값: Java println(langMap.get(1001)) //출력값: kotlin println(langMap) //출력값: {1001=..
fun main(args: Array) { //collection 수집 ArrayList LinkedList HashMap TreeMap //추가, 삭제 불가 var numbers: List = listOf(1,2,3,4,5) for(n in numbers) print("$n") //출력값: 12345 println() var names:List = listOf("one","two","three") for(name in names){ println(name) } /* 출력값 one two three */ println(names.size) //출력값: 3 println(names.get(1)) //출력값: two println(names.indexOf("three")) //출력값:2 println(nam..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/Ty8SA/btrrKJeBFdc/pGcSe23kzZJ1KbLvtSUm31/img.png)
기억해야 할 개념 추상클래스는 추상 메소드를 하나이상 포함하고 있는 클래스이다. 추상 클래스는 일반 메소드와 추상 메소드(최소 1개 이상) 모두 가질수 있다. 부모 추상 클래스 안에 있는 추상속성, 추상메소드는 반드시 자식 클래스에서 구현해야지 오류가 나지 않는다. 클래스는 다중 상속이 불가능하다. 인터페이스는 다중 상속이 가능하다. fun main(args: Array) { myPrinter.print() //출력값: myPrinter print} abstract class Printer{ // 추상 클래스 : 추상 메소드를 하나이상 포함하고 있는 클래스 abstract fun print() //추상 메소드 fun method() = println("") //일반 메소드 } val myPrinter =..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/AlTaC/btrrPF92L5k/V9iyg7xcKWwCrOgg63bqF1/img.png)
메인함수 fun main(args: Array) { //this와 super, overriding, overload 사용 val base = Base("길동","홍",24) base.firstname = "진호" //firstname 진호로 set. println(base.fullName) // get과 같은 역할, 출력값: 진호 홍 val child = Child("춘향","성",15, "서울시") //Base 클래스의 자식 클래스인 Child의 생성자 println(child.lastname) // 출력값 : 성 println(child.fullName) // 오버라이딩 전 출력값: 춘향 성 , 오버라이딩 후 출력값: 춘향 15 서울시 } 부모 클래스와 자식 클래스 //상속을 해주기 위해 open 붙..