Languages15 [Java 8] 함수형 인터페이스와 람다 함수형 인터페이스와 람다 함수형 인터페이스와 람다표현식 소개 자바에서 제공하는 함수형 인터페이스 람다 표현식 메서드 레퍼런스 📌 함수형 인터페이스와 람다 표현식 소개 함수형 인터페이스(Functional Interface) 추상 메서드를 딱 하나만 가지고 있는 인터페이스 SAM (Single Abstract Method) 인터페이스 @FuncationInterface 애노테이션을 가지고 있는 인터페이스 @FunctionalInterface public interface RunSomething { void doIt(); static void printName() { System.out.println("name"); }; default void printAge() { System.out.println(30).. 2023. 5. 18. [Java] 리플렉션(Reflection)이란 스프링과 JPA를 학습하던 중 Reflection이라는 개념이 자주 등장하여 정리하기 위해 포스팅을 하게 되었다. 스프링은 어떻게 실행시점에 빈을 주입할 수 있는 걸까? JPA의 Entity는 왜 꼭 기본 생성자를 가져야만 할까? 📌 Reflection 구체적인 클래스 타입을 알지 못해도 그 클래스의 메서드, 타입, 변수들에 접근할 수 있도록 해주는 자바 API 자바에서는 컴파일러가 자바코드를 바이트코드로 바꿔주고 클래스로더는 바이트코드를 읽어 JVM 메모리 영역에 저장하게 된다. 리플렉션은 이 JVM 메모리 영역에 저장된 클래스의 정보를 꺼내와서 필요한 정보들 생성자, 필드, 메서드들을 가져와 사용하는 기술이다. 📌 Reflection은 왜, 어디에서 사용할까? Why 개발자 입장에서 소스코드를 작성할.. 2023. 5. 12. DTO vs VO 그리고 Entity와 DTO를 분리하는 이유 DTO와 VO를 당연 시 사용했지만 막상 DTO와 VO의 차이에 대해 뚜렷하게 설명할 수 없었고 이번 포스팅을 통해 정리해보려고 한다. 먼저, DTO와 VO는 전혀 다른 용도의 객체이다. 📌 VO 란? VO는 Value Object로 값 그 자체를 표현하는 객체이다. VO는 객체의 참조값이 다르더라도 값이 같다면 동일한 것으로 봐야한다. 예를 들어 서로 고유번호가 다른 10000원 지폐가 2장이 있다고 할 때, 10000원 지폐의 고유 번호가 서로 다르다고 해서 다른 10000원 이라고 하지 않고 똑같은 10000원이라 한다. 이처럼 값으로만 비교되는 객체를 VO라고 한다. 📌 VO의 특징. Read-Only속성을 가진다. 값 자체를 표현하기 때문에 불변 객체여야한다. 불변성이 보장되어야 하기 때문에 s.. 2023. 4. 26. 이전 1 2 3 4 다음