티스토리 뷰

개발 중에  java.lang.ClassCastException 이 발생 하였다. 왜 발생하는 에러인지, 어떻게 해결 하면 되는지 알아보자.

 

 

|ClassCastExceptoin

-객체의 형을 반환 할때 객체 타입이 적절하지 않을 때 발생하는 에러

 

 

위에서 설명 하였듯 이 에러는 객체 타입이 적절하지 않을 때 발생하는 에러이다. 클래스 단위의 에러이기 때문에 이 에러가 고쳐지려면 Class의 객체 타입을 변경 하거나 내 소스 코드의 객체 타입을 변경 하여야 한다. 

 

이 에러는 실제로 객체 타입을 변경 해야만 하는 경우에도 발생하지만, 잘못된 클래스는 extends 하였을 때도 발생한다. 

 

 

|에러 경우 예시

나의 경우 개발 중 Fragment 에서 SharedPreferences 를 사용 하기 위해 PreferencesFregment 를 extends 하다가 발생하였다.  

MVVM 패턴의 경우 Fragment 에서는 UI 를 다루기 때문에 Prefences에 직접적으로 접근 할 수 없어서 발생한 문제였다. 

 

이러한 경우에는 따로 PreferencesManager 클래스를 만들어 주어 여기서 SharePreferences 들을 관리 하면 된다.

 

공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
글 보관함