# Effective Java

364개의 포스트
post-thumbnail

[Effective Java 3E] Item8. finalize와 Cleaner사용을 피하라

자원을 즉시 회수해야할 필요성이 있을 경우, finalize() 와 Cleaner대신 `AutoClosable`을 구현한 클래스를 try-with-resources와 함께 사용하자

어제
·
0개의 댓글
·
post-thumbnail

[Effective Java 3E] Item6. 불필요한 객체 생성을 피하라

*주의: 객체 생성이 무조건적으로 나쁘다는 것은 아니다. 상황에 따라 적절하게 객체를 Retrieve하는 방법도 고려하자

어제
·
0개의 댓글
·
post-thumbnail

try-finally 보단 try-with-resources를 사용하라

Java에서는 try-catch-finally와 throw, throws 키워드가 있다.try-catch-finally : try 블록에서 로직을 실행한다. catch 블록은 try 블록에서 발생한 예외를 catch 해 처리한다. 마지막 finally 블록에서 try

2일 전
·
0개의 댓글
·
post-thumbnail

불필요한 객체 생성을 피하라

불필요한 객체가 반복적으로 생성되고 있는 것을 피해야한다.불필요하게 객체가 반복적으로 생성하지 않도록 하기 위하여 Flyweight 패턴을 사용하여 같은 객체를 공유해서 사용하거나, 생성 비용이 비싼 객체를 캐싱하여 재사용해야한다.불필요한 객체를 생성하는 가장 간단한

3일 전
·
0개의 댓글
·
post-thumbnail

자원을 직접 명시하지 말고 의존 객체 주입을 사용하라

인스턴스를 생성할 때, 생성자( 또는 정적 팩터리, 빌더 등)에 필요한 자원을 넘겨주는 방식이 의존 객체 주입이다.변형으로 생성자에 해당 자원 자체가 아닌 자원 팩터리를 넘겨줄 수 있다.의존성이 수 천개나 되는 큰 프로젝트에서는 코드가 어지러워지는데, Spring 같은

3일 전
·
0개의 댓글
·
post-thumbnail

64. 객체는 인터페이스를 사용해 참조하라

구체 클래스 대신 인터페이스를 사용한다. 적합한 인터페이스가 없다면 클래스의 계층구조 중 필요한 기능을 만족하는 상위의 클래스를 타입으로 사용한다.

2022년 8월 10일
·
0개의 댓글
·

[Effective Java] 아이템 17. 변경 가능성을 최소화하라

불변 클래스 >불변 클래스란? 그 인스턴스의 내부 값을 수정할 수 없는 클래스다. 불변 인스턴스에 저장된 상태는 고정되어 객체가 파괴되는 순간까지 절대 변경되지 않는다. 자바 플랫폼 라이브러리에도 String, 기본 타입의 박싱된 클래스들, BigInteger, B

2022년 8월 9일
·
0개의 댓글
·

[Effective Java] 아이템 17. 변경 가능성을 최소화하라

아이템 17. 변경 가능성을 최소화하라

2022년 8월 8일
·
0개의 댓글
·

[Effective Java] 아이템 16. public 클래스에서는 public 필드가 아닌 접근자 메서드를 사용하라

아이템 16. public 클래스에서는 public 필드가 아닌 접근자 메서드를 사용하라

2022년 8월 8일
·
0개의 댓글
·
post-thumbnail

상속보다 컴포지션을 사용하라

상위 클래스가 어떻게 구현되는냐에 따라 하위 클래스의 동작에 이상이 생길 수 있다. 상위 클래스의 변경이 코드 한 줄 바꾸지 않은 하위 클래스의 동작에 영향을 미친다는 이야기이다.

2022년 8월 6일
·
0개의 댓글
·

[Effective Java] 아이템 15. 클래스와 멤버의 접근 권한을 최소화하라

아이템 15. 클래스와 멤버의 접근 권한을 최소화하라

2022년 8월 2일
·
0개의 댓글
·

[Effective Java] 4 장. 클래스와 인터페이스

4 장. 클래스와 인터페이스

2022년 8월 2일
·
0개의 댓글
·
post-thumbnail

1. 생성자 대신 정적 팩터리 메서드를 고려하라

클래스는 생성자와 별도로 정적 팩터리 메서드 (static factory method)를 제공한다. 생성자에 제공하는 파라미터가 거기에서 반환하는 객체를 잘 설명하지 못하는 경우에 이름을 가질 수 있는 static 팩토리를 사용하는 것이 알아보기 보다 더 쉽고 읽기 편

2022년 8월 2일
·
0개의 댓글
·

[Effective Java] 아이템 14. Comparable을 구현할지 고려하라

아이템 14. Comparable을 구현할지 고려하라

2022년 8월 1일
·
0개의 댓글
·
post-thumbnail

인스턴스화를 막으려거든 private 생성자를 사용하라

private 생성자를 사용하여 인스턴스화를 막자

2022년 7월 31일
·
0개의 댓글
·
post-thumbnail

private 생성자나 열거 타입으로 싱글턴임을 보증하라

인스턴스를 오직 하나만 생성할 수 있는 클래스이다.

2022년 7월 29일
·
0개의 댓글
·
post-thumbnail

생성자에 매개변수가 많다면 빌더를 고려하라

생성자 매개변수 많으면 빌더 패턴을 써보자

2022년 7월 28일
·
0개의 댓글
·
post-thumbnail

생성자대신 정적 팩터리 메소드를 고려하라

정적 메서드란 인스턴스를 생성, 반환하는 메서드이다.

2022년 7월 28일
·
0개의 댓글
·