![](http://i1.daumcdn.net/thumb/C148x148.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/bHdF0i/btrB7NYqs7A/kbKnYAhkkO00xeGX7iE5J0/img.png)
String Constant Pool 자바에서 String 객체를 생성하는 방법은 따옴표(")를 이용한 방법과 new 연산자를 이용하는 방법이 있습니다. 이 두 방법의 차이에 대해서 한번 알아 보겠습니다. 💡 바로 예제 코드를 보며 살펴보겠습니다. public static void main(String[] args) { String text1 = "Java"; String text2 = "Java"; String text3 = new String("Java"); System.out.println("1. text1 == text2은 같을까? " + (text1 == text2)); // true System.out.println("2. text1 == text3은 같을까? " + (text1 == text..
![](http://i1.daumcdn.net/thumb/C148x148.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/GzLHw/btrsXF9peE0/vnKD7RFJk9ATW944Lv51l0/img.png)
람다 표현식(Lambda Expressions) 람다식이란 메서드를 하나의 식으로 표현한 것입니다. 람다식으로 표현하면 return이 없어지므로 람다식을 익명 함수라고도 합니다. 람다식의 장점 코드가 간결해집니다. 가독성이 향상됩니다. 멀티 쓰레드 환경에서 용이합니다. 함수를 만드는 과정없이 한번에 처리하기에 생산성이 높아집니다. 람다식의 단점 람다로 인한 무명 함수는 재사용이 불가능합니다. 디버깅이 까다롭습니다. 람다를 무분별하게 사용하게 되면 코드가 지져분해 집니다. 재귀로 만드는 경우 부적합해집니다. 람다를 사용하지 않은 예제 interface MyFunction { void init(); } public class Example { public static void main(String[] arg..
![](http://i1.daumcdn.net/thumb/C148x148.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/d1QiPp/btrr2YhP2zr/Oz2kn2RiFDge03fHBn7081/img.png)
제네릭이란? 제네릭이란 아래 코드에서 괄호 안에 들어가는 타입을 지정할 수 있는데 클래스 내부에서 지정하는 것이 아니라 외부에서 사용자에 의해 지정되는 것을 의미합니다. ArrayList arrayList = new ArrayList(); HashMap hashMap = new HashMap(); 제네릭의 장점 제네릭을 사용하면 잘못된 타입이 들어올 수 있는 것을 컴파일 단계에서 방지할 수 있습니다. 클래스 외부에서 타입을 지정해주기 때문에 따로 타입을 체크하거나 변환을 해줄 필요가 없게됩니다. 비슷한 기능을 지원하는 경우 코드의 재사용성이 높아집니다. 제네릭의 타입 public class 클래스명 { ... } public interface 인터페이스명 { ... } 타입 인자 설명 Type Eleme..
![](http://i1.daumcdn.net/thumb/C148x148.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/nWjFp/btrr7pFh5kh/GZXiM9DJRDLx2nk0NOqSe0/img.png)
IO란? input과 output의 약자로 입력과 출력을 나타냅니다. 즉 컴퓨터 내부 또는 외부와의 장치와 프로그램간의 데이터를 주고 받는것을 말합니다. 스트림이란? 스트림이란 실제의 입력이나 출력이 표현된 테이터의 흐름을 말하며, 자바에서는 파일이나 콘솔에서의 입출력을 스트림을 통해 다룹니다. 스트림은 한 방향으로만 통신이 가능하기 때문에 입력과 출력을 동시에 처리할 수 없고 출력과 입력을 동시에 할려면 입력스트림과 출력스트림 각각을 만들어야 합니다. 스트림이란 자바8부터 추가된 컬렉션(배열 포함)의 저장 요소를 하나씩 참조해서 람다식으로 처리할 수 있도록 해주는 반복자 입니다. 스트림의 특징 Stream은 Iterator와 비슷한 역할을 하는 반복자이지만, 람다식으로 요소 처리 코드를 제공하는 점과 ..
- Total
- Today
- Yesterday
- 트랜잭셔널 아웃박스 패턴 스프링부트
- 공간 기반 아키텍처
- java ThreadLocal
- microkernel architecture
- service based architecture
- 자바 백엔드 개발자 추천 도서
- spring boot redisson destributed lock
- 람다 표현식
- transactional outbox pattern
- spring boot excel download oom
- space based architecture
- 트랜잭셔널 아웃박스 패턴 스프링 부트 예제
- 서비스 기반 아키텍처
- spring boot poi excel download
- redis 대기열 구현
- spring boot redisson sorted set
- pipeline architecture
- 레이어드 아키텍처란
- polling publisher spring boot
- JDK Dynamic Proxy와 CGLIB의 차이
- spring boot excel download paging
- spring boot redis 대기열 구현
- spring boot 엑셀 다운로드
- transactional outbox pattern spring boot
- @ControllerAdvice
- redis sorted set으로 대기열 구현
- redis sorted set
- pipe and filter architecture
- spring boot redisson 분산락 구현
- java userThread와 DaemonThread
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |