모던자바인액션 2

동작 파라미터화 코드 전달하기(2)

ApplePredicate 인터페이스를 구현하는 여러 클래스를 인스턴스화 하는 과정이 좀 복잡할 수 있다. → 익명 클래스를 사용해 보자 익명 클래스란? 자바의 지역 클래스( 블록 내부에 선언된 이름이 없는 클래스 이다.) 익명클래스를 만들면 클래스 선언와 인스턴스화 동시 진행 가능! 다섯번째시도 : 익명 클래스를 사용해보자 List redApples = filterApples(inventory, new ApplePredicate(){ public boolean test(Apple apple){ return RED.equals(apple.getColor()); } }) 위의 예제를 보면 클래스를 새로 만들지 않고 익명의 클래스를 만들어서 작성하였다. 그치만 익명의 클래스도 자리를 많이 차지하기 때문에 좀..

JAVA 2023.01.19

동작 파라미터화 코드 전달하기(1)

앞으로 모던 자바 인 액션 책을 읽고 기억해야 할 내용이나 새로 알게 된 내용을 정리해보려 한다. 아래는 2장 동작 파라미터화 코드 전달하기의 일부 내용이다. 우리가 어떤 상황에서 일을 하던 소비자의 요구사항은 항상 바뀐다. 시시각각 변하는 사용자 요구사항에 어떻게 대응해야 할까? → 동작 파라미터화를 이용하자! 동작 파라미터화란? : 아직은 어떻게 실행할 것인지 결정하지 않은 코드블록을 의미한다. 첫번째 시도 : 기존의 농장 재고목록 애플리케이션에 리스트에서 녹색 사과만 필터링 하는 기능을 추가해 보자! public static List filterGreenApples(List inventory){ List result = new ArrayList(); for (Apple apple : inventor..

JAVA 2023.01.10