[Java] 자바 리플렉션(Reflection) 실습하기
·
JAVA
자바 코드를 직접 적어보며 자바 리플렉션의 사용 방법을 알아보자 혹시 자바 리플렉션에 대해서 잘 알지 못한다면 아래의 포스트를 보고 오자! [Java] 자바 리플렉션(reflection)이란? 이번 포스트에서는 자바 리플렉션과 이걸 사용하는 스프링에 대해서 알아보자 1. 자바 리플렉션이란 리플렉션이란? 리플렉션은 자바에서 클래스나 멤버에 대한 정보를 런타임에 조사하고, 조작 curiousjinan.tistory.com 1. 리플렉션으로 private 필드와 메서드에 접근하기 클래스와 생성자 정의 이 코드에서 FirstReflectionExample 클래스는 secret과 number라는 두 개의 private final 필드를 가지고 있다. 생성자는 이 두 필드에 값을 할당하는 역할을 한다. 비공개 메서..
[Java] 자바 리플렉션(reflection)이란?
·
JAVA
이번 포스트에서는 자바 리플렉션과 이걸 사용하는 스프링에 대해서 알아보자 1. 자바 리플렉션이란 리플렉션이란? 리플렉션은 자바에서 클래스나 멤버에 대한 정보를 런타임에 조사하고, 조작할 수 있는 기능이다. 예를 들어, 클래스의 이름, 메서드, 필드, 생성자 등에 대한 정보를 프로그램 실행 중에 알아내고, 이를 통해 객체를 생성하거나 메서드를 호출할 수 있다. 이 기능 덕분에, 개발자는 코드의 유연성과 확장성을 높일 수 있다. 리플렉션 예시 코드를 보면 Class.forName("java.lang.String")은 String 클래스에 대한 Class 객체를 가지고 온다. 그리고 getDeclaredMethods() 메서드를 사용해서 가져온 클래스에 정의된 모든 메서드의 정보를 얻어내는 것이다. 이렇게 리..
[Java] Stream: mapToInt 함수로 점수 합산하기
·
JAVA
Stream의 mapToInt() 함수를 예제를 통해 쉽게 이해해보자 1. 예제로 이해하는 mapToInt 학생 객체의 리스트에서 특정 조건을 만족하는 학생을 찾고, 그들의 점수를 합산하는 작업 학생 클래스 선언 예제에서 사용하게 될 Student 클래스를 생성한다. public class Student { private String name; private int score; public Student(String name, int score) { this.name = name; this.score = score; } public String getName() { return name; } public int getScore() { return score; } } for문을 사용해서 합계를 계산하는 코..
[Java] 예제로 이해하는 자바 스트림(stream)
·
JAVA
자바8 이상 문법인 Stream을 알아보자 📌 서론 이번 포스트에서는 간단한 예제를 통해 stream을 이해해보는것이 목표다. 1. Stream 예제: 특정 문자열을 찾고 대문자로 변환 문자열의 List에서 특정 문자열을 찾고 그 문자열을 대문자로 변환하는 작업 Stream을 사용하지 않고 for문을 사용한 코드 import java.util.ArrayList; import java.util.Arrays; import java.util.List; public class ListExample { public static void main(String[] args) { // List를 생성한다. List list = Arrays.asList("apple", "banana", "cherry", "date", ..
[Java] ObjectMapper란 무엇인가?
·
JAVA
자바의 ObjectMapper를 알아보자. 1. ObjectMapper란 무엇인가?ObjectMapper는 Jackson 라이브러리에서 제공하는 클래스 중 하나로, Java 객체를 JSON으로, 또는 JSON을 Java 객체로 변환하는 데 사용된다. 이러한 변환 과정을 직렬화(Serialization)와 역직렬화(Deserialization)라고 한다. JSON 직렬화란?직렬화는 객체의 상태를 바이트 스트림이나 문자열과 같은 표준 형식으로 변환하는 과정이다. JSON 직렬화는 특히 웹 애플리케이션이나 API 통신에서 데이터 교환의 표준 형식으로 널리 사용된다. JSON은 가볍고, 인간이 읽기 쉬우며, 대부분의 프로그래밍 언어에서 쉽게 파싱할 수 있다는 장점이 있다.왜 JSON을 선택할까?JSON은 간결한..