본문 바로가기

☕️ JAVA/🦋 Effective Java12

모든 구현 클래스에서 Object의 toString 재정의를 고려하자 🗣 이 글은 책 '이펙티브 자바 3판 Item 12'와 하단 Reference 참고했습니다. 잘못된 내용이 있다면 편하게 말씀해주세요 🙏🏻 주제 공통 메서드 : 자바의 클래스들은 최상위 클래스 “Object”를 모두 상속받고 있다. Object에서 final 메서드가 아닌 메서드 (equals, hashCode, toString, clone, finlized)가 있다. 왜 최상위 클래스에서 final 메서드를 제외한 메서드를 하위 클래스에 상속시킬까? 바로 클래스를 만드는 프로그래머, 사용자가 재정의하여 사용하라고 설계했기 때문이다. 하지만 규칙 없이 사용자 마음대로 사용하면 치명적일 수 있기 때문에 Object API 명세에 일반 규약이 명확히 정의되어 있다. 그중 toString() 메서드를 어떻게 오버.. 2022. 1. 15.
객체 생성할 때 '생성자' 대신 '정적 팩터리 메서드'를 써볼까? 🏭 *이 글은 책 '이펙티브 자바 3판 Item 1'과 하단 Reference 참고했습니다. 잘못된 내용이 있다면 편하게 말씀해주세요 🙏🏻 주제 객체 생성 : 인스턴스 생성 방법은 두 가지가 있다 하나는 전통적인 public 생성자 방법과 또 다른 하나는 정적 팩터리 메서드(static factory method) 방법이다. 예제 // 두 가지 인스턴스 생성 방법 public class Book { private String title; private String author; // 1. public 생성자 public Book(String title) { this.title = title; } // 2. 정적 팩터리 메서드 public static Book createBookWithTitle(String .. 2022. 1. 15.