정적 팩토리 메소드를 고려하라
싱글턴은 시스템 내에서 인스턴스가 오직 하나라는 개념을 말한다.전형적인 예로들면 무상태 인스턴스나 혹은 시스템상에서 유일해야하는 컴포넌트를 예로들 수 있다.싱글턴 인스턴스를 사용함으로써 다양한 장점을 얻을 수 있지만, 생성자를 private으로 선언함으로써 상속이 불가
Java8에서는 @FuncionalInterface 어노테이션을 가진 다양한 함수형 인터페이스를 제공한다.FunctorT,RConsumerTPredicateTSupplierT이중 SuppllierT 함수형 인터페이스에 대해 알아보도록 하자SupplierT 인터페이스는
DIP란 Dependency inversion principal의 약자로 클래스는 구체화된 클래스에 의존하지 않고 추상화된 객체(인터페이스, 추상클래스)에 의존해야하고, 고수준 모듈은 저수준 모듈에게 의존해서는 안된다는 의미이다.추상화된 객체에 의존해야하는 이유는 다음
이펙티브 자바라는 도서의 챕터 중 불필요한 객체 생성을 피하라라는 아이템에서 우연히“가상 머신 안에서 이와 똑같은 문자열 리터럴을 사용하는 모든 코드가 같은 객체를 재사용함이 보장된다.” 라는 문구를 보게되었습니다.‘JVM 내에서 다른 코드(변수)들 끼리 String
equals 메소드는 단순히 재정의 하기 쉬워보이지만, 자칫 잘못 재정의 할 경우 엄청난 버그를 야기할 수 있는데, 만약 equals 메소드를 재정의하지 않을 경우 같은 클래스의 경우만 true 값을 반환하게 됩니다.아래와 같은 상황이라면 굳이 equals 메소드를 재
요즘 공부중인 이펙티브 자바의 목록 중 “클래스와 멤버의 접근 권한을 최소화하라” 파트 부분을 읽고 정리하였습니다.개인적인 생각이 포함되어 있으니 참고 부탁드리겠습니다 ^^잘 설계된 컴포넌트와 그렇지 못한 컴포넌트의 차이는 클래스의 내부 구현을 외부로 부터 얼마나 잘
그동안 코드 재사용을 목적으로 상속 기법을 사용하는 경우가 종종 있었는데 이펙티브 자바를 공부하며 새로운 깨달음을 얻게 되었습니다.이펙티브 자바에서 제시하는 상속에 관한 내용을 여러분들과 공유하고 싶어 이렇게 포스팅하게되었습니다 ^^“같은 패키지에서 관리하는 클래스라면