방명록
- 안드로이드 개발공부 8일차 TIL - 예외처리, 널안정성2023년 11월 29일 20시 56분 41초에 업로드 된 글입니다.작성자: 짧은 코딩끈
일자 : 2023.11.29
금일 공부 목록
- 알고리즘 1문제 풀기
- 코틀린 문법강의 4주차
- 알고리즘 세션 강의 수강(이종범 튜터님)
- 개인과제 (Lv1~2)
다음 공부 목록
- 알고리즘 1문제 풀기
- 코틀린 문법강의 4주차
- 개인과제 (Lv2~3)
TIL 정리
▶예외처리
실행하기전 프로그래밍 언어를 번역하는 과정에서 발견되는 에러를 컴파일에러
실시간으로 프로그래밍 언어를 통역하는 과정에서 발견되는 에러를 런타임 에러
오류가 발생할 경우 프로그램이 비정상적으로 작동중지 할 수 있다.
작동중지는 심각한 문제이므로사용성을 해치지않고, 안정적으로 실행할 수 있도록 예상되는 오류를 예외처리하는 것이 좋다
try catch
더보기try 구문에서 해당 코드를 실행
정상 실행 후 break문에서 탈출
아니라면, catch문에서 코드 실행while(true) { try { var num1 = readLine()!!.toInt() println("내가 입력한 숫자는 ${num1}입니다") break } catch(e:java.lang.NumberFormatException) { println("숫자를 입력하세요") } }
try catch finally
더보기finally는 실행오류와 상관없이 무조건 실행하는 구문
while(true) { try { var num1 = readLine()!!.toInt() println("내가 입력한 숫자는 ${num1}입니다") break } catch(e:java.lang.NumberFormatException) { println("숫자를 입력하세요") } finally { println("키보드와의 연결은 정상적입니다") } }
▶알고리즘 세션
프로그래머스 2~3단계 문제를 스스로 풀 수 있는 수준이 되어야 한다.. ( °̥̥̥̥̥̥̥̥◡͐°̥̥̥̥̥̥̥̥)
▶널 안정성 (Null-Safety)
코틀린에서는 기본적으로 Null 값을 할당할 수 없다.
그렇기에 Null 값을 허용하도록 하는 것이 Null-Safety? !! ?. ?: null 값 허용 컴파일러에게 null 값 아님을 강제 보증하는것
null 값이면 실행 멈춤
( null 값 여부를 모를때
웬만하면 쓰지말것)null 값이면 null 값도출
아니라면 (.)참조연산자 진행null이 아니라면 그대로 값 도출
null이라면 (: 디폴트)값 도출?
var c: String? = "안녕하세요" println(c) c = null println(c)
!!
var c : String? = "안녕하세요" c = null println(c!!.length) // 실행멈춤 ,에러발생
?. ?:
var c: String? = "안녕하세요" println(c.length) // c변수에 null 값이 있을수도 없을수도 있는 상황으로 오류 발생 var c: String? = "안녕하세요" println(c?.length) // null 값이면 null 값 그대로 도출 아니라면 변수 c의 길이값 c = null println(c?.length?: "null 값입니다.") // null 값이므로 "null 값입니다." 도출
금일 회고
상태:😫
회고: 문법 강의 후에 과제를 시작했다. lv1~2를 했는데, 간단하게 보였지만 신경쓸게 많았다.
아직 미숙하여, 바로바로 머리에 떠오르지 않아서 시간도 걸리고 시행착오도 겪고 있다.
다른 분들은 이미 lv3까지 다하셔서 호텔 예약 과제 한다고 하시는데 부럽기도 하고 여러모로 더 열심히 달려야겠다.
'개발공부 > 일지' 카테고리의 다른 글
안드로이드 개발공부 10일차 TIL - 람다식, 컬렉션 (0) 2023.12.01 안드로이드 개발공부 9일차 TIL (0) 2023.11.30 안드로이드 개발공부 7일차 TIL - 오버라이딩(overriding), 오버로딩(overloading) (0) 2023.11.28 안드로이드 개발공부 6일차 TIL (0) 2023.11.27 안드로이드 개발공부 5일차 TIL (0) 2023.11.24 다음글이 없습니다.이전글이 없습니다.댓글