inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

자바 개발자를 위한 코틀린 입문(Java to Kotlin Starter Guide)

2강. 코틀린에서 null을 다루는 방법

main 함수 실행과 관련해서 질문드립니다.

511

비가싫어요

작성한 질문수 87

1

안녕하세요. 좋은 강의 잘 듣고 있습니다.

현재 인텔리제이에서 src/main/kotlin 폴더를 만들어서 강의를 따라가고 있습니다.

2강 강의를 듣던 도중 println(str?.length) 를 실행해보려고 main 함수를 실행시켰더니 빌드가 되면서 에러가 발생합니다.

lec12 패키지의 Lec12Main class에서

error: package Person does not exist 가 발생합니다.

Run Configuration에서 Run이 되기 전에 Build를 안 하게 옵션을 바꿔주면 함수가 실행은 되지만 str에 null을 넣었을 때도 길이가 3이 나오는 기이한 현상이 발생합니다.

어떻게 해결하는 것이 좋을까요?

 

(일단은 에러가 나는 부분을 주석처리하고 강의를 진행하고 있습니다!)

java 객체지향 oop kotlin

답변 1

1

최태현

안녕하세요 JUNN님!!! 좋은 질문 올려주셔서 감사드립니다!!! 😊

우선 2가지를 나누어 답변 드려보겠습니다!!!

 

[1. Main 함수 에러]

lec12 패키지의 Lec12Main class에서
error: package Person does not exist 가 발생합니다.

아이고~~ 이 부분은 github에 올라가 있는 버전으로 에러가 나는게 맞습니다!!! github에 올려드린 java 코드들은 제가 강의 촬영을 위해 그때그때 타이핑 했던것들을 단순히 올려둔거라, 확인해보니 에러가 나고 있더라고요!! 😭 주석처리 하고 진행해주시면 될 것 같습니다!!! (최신 github에는 다른 분께서 이 부분을 PR 올려주셔 반영되어 있습니다!)

 

[2. Build 없이 Run 하는 경우에 3이 나오는 문제

Run Configuration에서 Run이 되기 전에 Build를 안 하게 옵션을 바꿔주면 함수가 실행은 되지만 str에 null을 넣었을 때도 길이가 3이 나오는 기이한 현상이 발생합니다.

제 생각에는 build 를 해야 str에 null이 들어간 것이 컴파일이 되고, str에 null이 들어 있는 버전으로 실행되는 것 같아요!!

Kotlin을 돌려보실 때에 build -> run 순서로 해주시면 모든 코드를 정상적으로 돌려보실 수 있을 것 같습니다 ㅎㅎㅎ

 

혹시나 또 궁금한 점 있으시면 편하게 질문 남겨주셔요!!

항상 감사드립니다!! 🙇🙇

0

비가싫어요

답변 정말 감사드립니다!!

수업노트

0

58

1

싱글톤과 스프링

0

74

2

get() = 3

0

53

2

강사님

0

76

1

강의 복습하면서 생긴 질문

1

97

1

Kotlin과 Java의 현업에서의 활용

0

130

2

data class와 자바의 Lombok을 이용한 DTO 클래스 차이 질문

0

75

1

코틀린에서 상속 시, 주의점에 대한 질문

1

101

3

내용 이해 질문

0

58

1

자바와 코틀린의 함수형 프로그래밍,

1

92

1

플랫폼 타입 설명 문의

2

79

2

널 아님 단언 관련 질문

0

86

1

강의 중 질문

0

81

2

범위 비교 질문

1

93

2

타입캐스팅 궁금한점 질문드립니다.

1

241

2

코틀린 val 질문

0

168

2

완강 후 Kotlin 이런저런 질문 드려봅니다!

3

411

2

확장함수 스타일 질문

0

140

2

확장 프로퍼티 질문

1

158

1

update 함수를 만든다는게 어떤 의미인지 예시가 궁금합니다!

1

283

1

java class의 NotNull 어노테이션 인식

1

264

1

[16강] 확장함수 관련 질문입니다!

1

134

2

리턴타입 사용시 any를 사용해도 괜찮은가요?

1

142

1

안녕하세요 scope function 에 receiver 가 없는 경우

1

172

1