일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- 스프링부트공부
- Axon framework
- querydsl
- DDD
- 플러터 공부
- 코테공부
- nestjs스터디
- 카프카
- JPA
- JPA공부
- K8S
- 스프링부트
- 스프링
- JPA예제
- 알고리즘공부
- 기술면접공부
- 자료구조공부
- 코테준비
- JPA 공부
- 스프링공부
- 자바공부
- 기술공부
- 스프링 공부
- JPA스터디
- 플러터 개발
- nestjs
- 프로그래머스
- nestjs공부
- Flutter
- Kafka
- Today
- Total
목록제네릭 (3)
DevBoi
제네릭에 대해서 좀 더 심화된 부분을 공부해보자 ObjectMapper에 대해서 공부를 하다가. 생긴 궁금증은 꼬리의 꼬리를 물었고, 내가 모르는 부분까지 봉착했다. 결과적으로 ObjectMapper를 사용할때 제네릭 관련 변수로 뺄때 왜 TypeReference를 선언해야하는지 이해가 안됬다. 정확히는 이유를 정확하게 몰랐다. 제네릭의 type erasure에 대해서 먼저 알아야 한다. 타입 소거라고도 한다. 런타임에 타입에 대한 정보를 버리는 것이다. bounded type -> bound type unbouned type -> Object 1) Unbounded Type public class SmithTest { public static T unboundedType(T t) { return t; ..
제네릭은 일반적인 이라는 이름, 뭐이름은 중요하지 않고 클래스 내부에서 지정하는 것이 아닌 , 외부에서 사용자에 의해 지정되는 것을 의미한다. 한마디로, 특정 타입을 미리 지정해주는 것이 아니라 필요에 의해 지정할수 있도록 하는 일반 제네릭 타입이라는 것이다. 제네릭의 장점 - 제네릭을 사용하면 잘못된 타입이 들어올 수 있는 것을 컴파일 단계에서 방지할수 있다. - 클래스 외부에서 타입을 지정해주기 때문에 타입을 체크하고 변환해줄 필요없이 관리가 편하다. - 비슷한 기능을 지원하는 경우 코드의 재사용성이 높아진다. 제네릭을 실제로 구현하고있는 것을 예시로 한번 생각해보자 우리가 많이 쓰는 ArrayList가 있다. 이걸 만들고있는 라이브러리를 보면, 제네릭으로 구현이 되어있다. 우리는 ArrayList,..
제네릭... 제네릭이 뭘까...?? 사실 개발을 조금 해봤으면 모를리 없다. 그래도. 가끔 헷갈리면서 잘못쓰는 경우를 대비해서 정리 및 작성 기초부터 잘알아야 어떨때 어떤걸 쓰는게 맞는지 알테니 고고 1. 제네릭 제네릭이란, 하나의 값으로 여러가지 다른 데이터 타입들을 가질수 있도록 하는 방법이다. List test = new ArrayList(); 이런식으로 선언을 하는데, 제네릭 클래스는 위와 같이 String에 대한 고정이 아니라 사용자의 입력에 따라서 유동적으로 값을 받을수 있도록 하는 것이다. 장점 : Typemismatch 에러 방지, 관리 편리, 코드 재사용성 높아짐 type Element Key Value Number 암묵적인 규칙이다. 쉽게말해 Public class TestClass{}..