java 7

[JAVA 기초] Wrapper Class 란?

What is Wrapper Class? 자바의 자료형 크게 기본 타입(primitive type)과 참조 타입(reference type)으로 나누어집니다. 기본 데이터 타입은 int, float, boolean, char 등과 같은 것들을 의미합니다. 이러한 기본 데이터 타입은 메서드를 호출하거나 변수에 접근하는 등의 객체 지향 프로그래밍의 특징을 활용할 수 없는 한계가 있습니다. 이런 한계를 극복하기 위해 기본 데이터 타입을 Wrapper Class로 래핑 하여 객체로 다룰 수 있도록 합니다. 자바는 모든 기본 타입(primitive type)은 값을 갖는 객체를 생성할 수 있습니다. 이런 객체를 포장 객체라고도 하는데 그 이유는 기본 타입의 값을 내부에 두고 포장하기 때문입니다. Wrapper C..

java 2023.06.29

Java - Optional 문법

안녕하세요 오늘은 Java 문법에 대해서 정리를 해볼 건데요 그중에서 java 8 버전에서 나온 Optional 문법에 대해서 자세히 알아볼게요 Java 8부터 지원하는 Optional 클래스에 대해서 알아보겠습니다. 예를 들어서 Order 클래스는 Member 타입의 member 필드를 가지며, Member 클래스는 다시 Address 타입의 address 필드를 가집니다. 그리고 "어떤 주문을 한 회원의 어느 도시에 살고 있는지 알아내기" 위해서 다음과 같은 메소드가 있다고 가정해보자 public String getCityOfMemberFromOrder(Order order){ return order.getMember().getAddress().getCity(); } 위 메소드가 NullPointer..

java 2022.08.12

[Java] Thread 란?

안녕하세요 저번에 ThreadLocal을 하면서 우선순위로 Thread 설명 정리를 먼저 했어야 했는데 뒷순위로 정리를 하게 되었는데요 ㅎㅎ Thread란 간단하게 여러 개의 작업을 동시에 할 수 있는 것입니다 밑에서 더 자세하게 설명해드릴게요 ●멀티 태스킹? 멀티 태스킹이란 멀티(multi)+태스킹(tasking)의 합성어로서 다수의 작업을 동시에 처리하는 것을 말합니다. 위에 그림처럼 우리는 다양한 작업을 멀티태스킹을 이루어지고 있습니다. 예를 들어서 유튜브에 노래를 틀어놓고 공부하는 작업을 한다던가, 핸드폰 노래를 들으면서 인스타그램을 본다던가 다양하게 멀티태스킹을 합니다. 본래 멀티태스킹은 컴퓨터 기술 용어로써 여러 프로그램 코드(작업, 테스크)가 동시에 실행되는 것을 말합니다. ●스레드(Thre..

java 2022.07.30

ThreadLocal 이란?

안녕하세요 Spring을 공부하다가 JAVA 내용을 기억할려고 블로그에다가 정리를 해봐요 저번에는 JAVA의 Collection 부분을 정리를 하였는데요 2022.07.18 - [java] - [Java] 컬렉션 - Collection 이란? [Java] 컬렉션 - Collection 이란? 안녕하세요 오랜만에 Java 공부를 하다가 Collection 부분 블로그 기록 남기는 정리해서 알려드릴게요 Collection 이란? 객체의 모음, 그룹이라고 할 수 있습니다. 자바에서느 값을 저장하는 다양한 컨 nosechild.tistory.com 위에 참고하면 감사하겠습니다 이번에는 공부를 하다가 ThreadLocal 클래스에 대해서 정리를 해보겠습니다. ThreadLocal ThreadLocal은 JDK 1..

java 2022.07.28

[Java] 컬렉션 - Collection 이란?

안녕하세요 오랜만에 Java 공부를 하다가 Collection 부분 블로그 기록 남기는 정리해서 알려드릴게요 Collection 이란? 객체의 모음, 그룹이라고 할 수 있습니다. 자바에서느 값을 저장하는 다양한 컨테이너가 있는데, 다양한 컨테이너를 상황에 맞게 사용할 수 있게 하는 것이 컬렉션 프레임워크입니다. 컬렉션 프레임워크에는 크게 'Collection' 과 'Map' 아래 주요 인터페이스가 존재합니다. 해당 자료구조가 어떨때 사용되야하며, 언제 유리한지 어느 정도의 시간복잡도와 성능을 가지는지도 알수록 좋은 프로그래머라고 생각합니다 ㅎㅎ 그래서 아래 이러한 내용을 코드와 함께 정리해보도록 하겠습니다. List Interface 이 인터페이스는 정렬된 모든 객체 컬렉션을 저장할 수 있는 목록 데이터..

java 2022.07.18

[Java] Static import 란?

안녕하세요 Spring 공부하다가 Test 기능에서 Static import를 써서 사용한 것을 정리해볼려고 합니다. Static import Static import문은 JDK1.5부터 추가된 기능이다. import문을 사용하면 클래스의 패키지명을 생략할 수 있는 것과 같이 Static import문을 사용하면 static멤버를 호출할 때 클래스명을 생략할 수 있다. 코드가 간결해지고 특정 클래스의 static 멤버를 자주 사용할 때 편리하지만 남용하면 독이 될 수 있기 때문에 주의 해야합니다. 테스트 프레임워크인 JUnit을 사용하다보면 static import 적절한 예를 살펴볼 수 있습니다. 위의 테스트는 static import를 적용하지 않았을 때이고, 밑에 예제는 Static import를 ..

java 2022.07.14

[Java] OOP의 다형성 및 SOLID

안녕하세요~!! 파이썬이랑 Web 기초랑 CS 부분만 공부하다가 Spring 공부하면서 Java 기초부분을 정리하게 되었는데요 오늘은 OOP 장점과 SOLID 부분에 대해서 설명을 하겠습니다. 객체 지향 패러다임의 4가지 주요 특성 "캡슐화", "추상화", "다형성", "상속" 중에서 "다형성" 포커스를 두고 설명을 하겠습니다. 다형성(Polymorphis) 객체지향 언어는 동일한 이름을 가진 메소드를 허용하지 않는다. 예를 들어 "잠든다"는 동작이 구현된 메소드가 있다고 가정하자. 잠든다는 동일한 동작이 구태여 두 개나 구현될 필요가 없습니다. 이러한 관점에서 본다면 메소드의 고유 아이덴티디라고도 불릴 수 있는 메소드명의 유니크화는 어쩌면 당연하다. 하지만 조금 생각해보면 이상하다. JAVA는 타입에 ..

java 2022.07.12