이 글의 개념 및 코드들은 책을 읽으며 정리한 내용을 바탕으로 작성하였습니다.
null이 반환될 수 있는 Method는 좋지 못하다.
왜냐하면 null 여부를 체크하기 위한
불필요한 코드가 추가되기 때문이다.
Example
public void registerItem(Item item) {
ItemRegistry registry = peristentStore.getItemRegistry(); // [1]
if (registry != null) {
boolean isExist = registry.getItem(item.getID()); // [2]
if (isExist != null && isExist) {
// Do Something...
}
}
}
위 코드에는
null 여부를 판단하는
2가지 if 문이 있다.
즉 Method가 null을 return 할 수 있기 때문에
어쩔 수 없이 null 여부를 체크하는
if 조건문이 추가된 것이다.
Q. if 조건문이 registerItem() Method의 기능을 위해 반드시 필요한 코드일까?
LINE Pay Real 환경에서
NPE가 발생했다.
NPE를 해결하기 위해
코드를 보는데
이게 어떻게 NPE가 발생하지? 란 생각이 들었다.
이 글의 개념 및 코드들은 책을 읽으며 정리한 내용을 바탕으로 작성하였습니다.
이번 글에서는
클래스에 접근하여 정보를 수정하는 방법에 대해 알아본다.
이 글의 개념 및 코드들은 책을 읽으며 정리한 내용을 바탕으로 작성하였습니다.
이번 글에서는
클래스에 접근하여
클래스 정보를 조회하는 방법에 대해 알아본다.
클래스에 접근하여
정보를 조회하는 과정을 이해하는데 있어
핵심이 되는 개념은
리플렉션(Reflection)과 Class< T > API를 사용하는 것이다.
이 글의 개념 및 코드들은 책을 읽으며 정리한 내용을 바탕으로 작성하였습니다.
이번 글에서는
클래스에 생성자에 접근하는 방법에 대해 알아본다.
클래스를 접근하기 위해서
해당 클래스의 생성자를 호출한다.
생성자의 Parameter가 있는 경우
생성자의 Parameter가 없는 경우
이 글의 개념 및 코드들은 책을 읽으며 정리한 내용을 바탕으로 작성하였습니다.
.class에서 Byte Code를 읽고 메모리에 저장한다.
클래스 로더 시스템이 끝나면
해당 Class Type의 Class 객체를 생성하여
힙 영역에 저장한다.
자세한 개념은 클래스 로더(Class Loader) 글을 참고하자.