인프런 커뮤니티 질문&답변

backboss님의 프로필 이미지
backboss

작성한 질문수

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

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

함수 null 질문드립니다.

작성

·

275

1

@nullable

public String getName() {

    return name;

}

 

- 위 함수는 리턴타입이  reference 타입이니 어노테이션을 지우면 참조형식이 될거 같은데 플랫폼 타입이 되는데

함수만 그런 규칙이 적용이 되는건가요?

 

 

답변 1

0

최태현님의 프로필 이미지
최태현
지식공유자

안녕하세요~ backboss님! 좋은 질문이십니다 ㅎㅎㅎㅎㅎ

우선, 말씀해주신 참조타입과 플랫폼타입의 관계에 대해 정리해보면 다음과 같습니다!

참조 타입 중, 어노테이션이 없는 타입만이 "코틀린에서 null 여부를 파악할 수 없는" 플랫폼 타입이 되는 것이지요!

 

그래서 질문 주신 

함수만 그런 규칙이 적용이 되는건가요?

에 대한 답변을 드리자면! 그렇습니다!!!

결국 플랫폼 타입이란건 '코틀린이 Java 코드를 가져왔을때' 그 값의 null여부를 알 수 없는 경우에만 플랫폼 타입인 것인데요!

(지극히 코틀린 입장이죠 ㅎㅎ)

Java에 있는 값을 가져오려면 '메소드'를 통해서만 가져올 수 있기에, 함수에만 이러한 규칙이 적용된다고 생각해주시면 될 것 같습니다!!!

 

더 궁금하신게 있으시다면, 편하게 질문 주세요~ 감사합니다!!

backboss님의 프로필 이미지
backboss

작성한 질문수

질문하기