인텐트를 공부하다 발견한 아래와 같은 코드
binding.btnMove.setOnClickListener(View.OnClickListener {
var intent = Intent(mContext, **SecondActivity::class.java**)
startActivity(intent)
})
자바에서는 이렇게만 해주면 되었는데
Intent intent = new Intent(mContext, SecondActivity.class);
차이점이 뭘까?
참고한 사이트 : https://woovictory.github.io/2019/08/08/Kotlin-Double-Ref/
*코틀린에서 더블 콜론 (::) 은 리플렉션을 위해 사용한다고 한다
리플렉션* : 코드를 작성하는 시점에는 런타임 상 컴파일 된 바이트 코드에서 내가 작성한 코드가 어디에 위치하는지 알 수 없기 때문에 바이트 코드를 이용해 내가 참조하려는 값을 찾기 위해 사용됨
SomeClass.class → 클래스 그 자체를 리플렉션
someInstance.getClass() → 인스턴스에서 클래스를 리플렉션