๋ชฉ๋กenum (3)

amid.jungs

Kotlin Interview ์ •๋ฆฌ

Q1 . val ๊ณผ var์˜ ์ฐจ์ด์ ์€ ๋ฌด์—‡์ธ์ง€? var ์€ ์ผ๋ฐ˜ ๋ณ€์ˆ˜์™€ ๊ฐ™์œผ๋ฉฐ ์—ฌ๋Ÿฌ ๋ฒˆ ํ• ๋‹น ํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ kotlin์—์„œ ๊ฐ€๋ณ€ ๋ณ€์ˆ˜๋กœ ์•Œ๋ ค์ ธ ์žˆ์Œ val์€ ํ•œ๋ฒˆ๋งŒ ์ดˆ๊ธฐํ™” ํ•  ์ˆ˜ ์žˆ๋Š” ์ƒ์ˆ˜ ๋ณ€์ˆ˜๋กœ kotlin์—์„œ๋Š” ๋ถˆ๋ณ€ ๋ณ€์ˆ˜๋กœ ์•Œ๋ ค์ ธ ์žˆ์Œ Q2 . val ๊ณผ const val ์˜ ์ฐจ์ด์ ์€ ๋ฌด์—‡์ธ์ง€? const์™€ val์€ ๋‘˜ ๋‹ค ๋ถˆ๋ณ€์„ฑ์„ ๋‚˜ํƒ€๋‚ด๊ณ  ๊ฐ’์„ ์ฝ๊ธฐ๋งŒ ํ•˜๋ฉฐ java์—์„œ ์ตœ์ข… ํ‚ค์›Œ๋“œ๋กœ ์ž‘๋™ val ํ‚ค์›Œ๋“œ๋Š” ๋Ÿฐํƒ€์ž„ ๊ฐ’์„ ์„ ์–ธํ•˜๋Š”๋ฐ ์‚ฌ์šฉํ•˜๋ฉฐ , const ํ‚ค์›Œ๋“œ๋Š” ์ปดํŒŒ์ผ ๊ฐ’์„ ์„ ์–ธํ•˜๋Š”๋ฐ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค Q3 . MutableLiveData์—์„œ setValue()์™€ PostValue()์˜ ์ฐจ์ด์ ์€ ๋ฌด์—‡์ธ์ง€? setValue() ๋ฉ”์„œ๋“œ๋Š” ๋ฉ”์ธ ์Šค๋ ˆ๋“œ์—์„œ ํ˜ธ์ถœ postValue() ๋ฉ”์„œ๋“œ๋Š” ๋ฐฑ๊ทธ๋ผ์šด๋“œ์—์„œ ๊ฐ’์„ ์„ค์ •..

Kotlin ๋ฌธ๋ฒ• 2022. 6. 7. 15:03
Dart ๋ฌธ๋ฒ•04

โ… . ์ƒ์† ์Šˆํผํด๋ž˜์Šค(๋ถ€๋ชจํด๋ž˜์Šค) -> ์„œ๋ธŒํด๋ž˜์Šค(์ž์‹ํด๋ž˜์Šค) ๊ธฐ์กด๊ธฐ๋Šฅ์„ ์žฌ์ •์˜ ์‹œ ์‚ฌ์šฉ override : ์˜ค๋ฒ„๋ผ์ด๋“œํ•˜์—ฌ ์žฌ์ •์˜ ๊ฐ€๋Šฅ super : ์Šˆํผํด๋ž˜์Šค์— ์ ‘๊ทผ ๊ฐ€๋Šฅ โ…ก. ์ถ”์ƒํด๋ž˜์Šค ์ถ”์ƒ ๋ฉ”์„œ๋“œ๋ฅผ ํฌํ•จํ•˜๋Š” ํด๋ž˜์Šค ์„ ์–ธ๋งŒ ๋˜๋ฉฐ ์ •์˜๋Š” ์—†์Œ ์ธ์Šคํ„ด์Šคํ™”X ๋‹ค๋ฅธ ํด๋ž˜์Šค์—์„œ implementํ•˜์—ฌ ๊ธฐ๋Šฅ์„ ์™„์„ฑํ•˜๋Š” ์ƒ์†์žฌ๋ฃŒ๋กœ ์‚ฌ์šฉ๋จ ๋Œ€์ƒ ํด๋ž˜์Šค implement , ๋ฉ”์„œ๋“œ @override ์ถ”์ƒํด๋ž˜์Šค ์—ฌ๋Ÿฌ๊ฐœ๋ฅผ ํ•œ๋ฒˆ์— ์ž„ํ”Œ๋ฆฌ๋จผํŠธํ•˜๊ธฐ ์ถ”์ƒํด๋ž˜์Šค ๊ตฌํ˜„์‹œ์—๋Š” ๋ชจ๋“  ์ถ”์ƒ๋ฉ”์„œ๋“œ๋ฅผ ์žฌ์ •์˜ โ…ข. ๋ฏน์Šค์ธ with : ์ƒ์†ํ•˜์ง€ ์•Š๊ณ ๋„ ๋‹ค๋ฅธ ํด๋ž˜์Šค์˜ ๊ธฐ๋Šฅ์„ ๊ฐ€์ ธ์˜ค๊ธฐ, ์˜ค๋ฒ„๋ผ์ด๋“œ๊ฐ€ ๊ฐ€๋Šฅ (๋ฏน์Šค์ธ์˜ ํ•œ ์ข…๋ฅ˜) โ…ฃ. ์—ด๊ฑฐ ํƒ€์ž… ์ƒ์ˆ˜๋ฅผ ์ •์˜ํ•˜๋Š” ํด๋ž˜์Šค switch๋ฌธ๊ณผ ํ•จ๊ป˜ ์‚ฌ์šฉ์‹œ ์—ด๊ฑฐํƒ€์ž…์œผ๋กœ ์ •์˜๋œ ๋ชจ๋“  ์ƒ์ˆ˜๋ฅผ case๋กœ ๊ฐ•์ œ๊ฒ€ํ†  ->..

Dart (Flutter) 2021. 8. 15. 14:12