게시판 즐겨찾기
편집
드래그 앤 드롭으로
즐겨찾기 아이콘 위치 수정이 가능합니다.
코틀린 내부 함수 질문입니다.
게시물ID : programmer_23125짧은주소 복사하기
작성자 : 새벽밤안개
추천 : 0
조회수 : 905회
댓글수 : 6개
등록시간 : 2020/05/13 00:15:23
옵션
  • 창작글
  • 본인삭제금지
fun main() {
val outval = Outclass()
val inval = outval.Inclass()

outval.outtext = "Hi Hi Out Class"

inval.Inprint()
Outclass().Inclass().Inprint()
}

class Outclass
{
var outtext = "Out Class"

inner class Inclass
{
fun Inprint()
{
println (this@Outclass.outtext)
}
}
}
보시는 바와 같이 내부 함수 구현 코드인데요. 결과 값은
 
Hi Hi Out Class
Out Class

이렇게 출력이 됩니다. 

이해가 안되는게 Outclass().Inclass().Inprint() 값이 왜 inval.Inprint() 같이 Main 함수에서 변경된 outtext 값 "Hi Hi Out Class" 으로 나오지 않는지 궁금합니다.

Outclass().Inclass().Inprint() 와 inval.Inprint() 어떻게 다르게 작동되는지 궁금합니다.

전체 추천리스트 보기
새로운 댓글이 없습니다.
새로운 댓글 확인하기
글쓰기
◀뒤로가기
PC버전
맨위로▲
공지 운영 자료창고 청소년보호