밥풀 개발
close
프로필 사진

밥풀 개발

  • 분류 전체보기 (8)
    • CS (0)
      • 네트워크 (0)
      • 운영체제 (0)
      • 알고리즘 & 자료구조 (0)
      • 데이터베이스 (0)
    • Tech Stack (7)
      • Java (6)
      • Spring (1)
      • React (0)
    • 머신러닝 & 딥러닝 (1)
      • AI 기초 다지기 (1)
  • 홈

[Java] 컬렉션 프레임워크 List와 의존 관계 주입

자바의 컬렉션 프레임워크는 자료 구조를 다루기 위한 다양한 인터페이스의 모음이다. List, Set, Queue와 같은 인터페이스로 구성되어 있다. 이번 글에서는 컬렉션 프레임워크의 List 인터페이스, 하위 클래스인 ArrayList, LinkedList에 대해 살펴보고자 한다.Java.util.ListList는 순서가 있고 중복을 허용하는 자료 구조이다. 배열도 마찬가지로 순서가 있고 중복을 허용한다. 그러나 자바에서 배열을 사용할 때 배열의 크기를 미리 선언해야 한다. 선언 후 크기를 변경 할 수 없고 고정된 크기를 가진다. 이와 달리 List는 크기를 동적을 변할 수 있다. List 인터페이스에는 ArrayList와 LinkedList와 같은 구현 클래스가 있다. 위 그림을 살펴보면 ArrayLi..

  • format_list_bulleted Tech Stack/Java
  • · 2024. 8. 16.

[Java] Enum 클래스

프로그래밍에서 enum은 여러 항목을 나열한 집합, 즉 미리 정의된 상수들의 묶음을 말한다. 이 글에서는 enum의 개념과 필요성 그리고 enum을 활용한 객체 지향적인 코드의 장점을 살펴보고자 한다. 문자열과 타입 안전성자바에서 Enum Type은 왜 제공할까? 아래 예제를 통해 확인해 보자.회원등급은 'BASIC', 'GOLD', 'DIAMOND' 총 3등급이 있다. 개발자는 회원 등급에 다른 할인율을 제공하기 위해 아래와 같은 코드를 작성했다.public class DiscountService { public int discount(String grade, int price) { int discountPercent = 0; if (grade.equals("BASIC")) { ..

  • format_list_bulleted Tech Stack/Java
  • · 2024. 8. 14.

[Java] 래퍼 클래스 (Wrapper Class)

래퍼 클래스 (Wrapper Class)래퍼 클래스는 기본형의 객체 버전이다. 자바는 기본형 데이터를 객체로 다룰 수 있는 래퍼 클래스를 제공한다. 기본형 (Primitive Type)래퍼 클래스 (Wrapper Class)byteByteshortShortintIntegerlongLongfloatFloatdoubleDoublecharCharacterbooleanBoolean 기본형의 한계와 래퍼 클래스의 필요성자바에서 래퍼 클래스는 왜 사용하는 것일까?자바는 객체 지향 언어이다. 그러나 자바에도 객체가 아닌 타입이 존재하는 데 바로 기본형(Primitive type)이다.기본형의 한계는 다음 두가지가 있다. 첫째, 객체가 아니다. 둘째, 기본형은 항상 값을 가진다.첫째로 기본형은 객체가 아니다. 단순한 ..

  • format_list_bulleted Tech Stack/Java
  • · 2024. 8. 13.

[Java] String 클래스와 주요 메서드

String 클래스 자바에서 문자를 다루는 타입은 Char, String이 있다.기본형 Char는 문자 하나를 다룰 때 사용한다. 여러 문자를 사용하려면 char[]를 사용해야 하는데 편의성을 위해 자바에서는 String 클래스를 제공한다.String 클래스 구조는 다음과 같다.public final class String { // 문자열 보관 private final char[] value; // 자바 9 이전 private final byte[] value; // 자바 9 이후 // 여러 메서드 public String concat(String str) {...} public int length() {...} ...}자바 9 이후로 String 클래스는 ..

  • format_list_bulleted Tech Stack/Java
  • · 2024. 8. 13.

[Java] 불변 객체 (Immutable Object)

자바에서 제공하는 많은 클래스들은 불변 객체로 설계되어 있다. 불변 객체 개념은 무엇이고 자바에서 어떻게 쓰이는지 살펴보자. 불변객체(Immutable Object)불변 객체는 객체가 생성된 후 내부 상태가 절대로 변하지 않는 객체를 말한다. 자바에서는 String, Integer 같은 클래스들이 대표적인 불변 객체이다. 공유 참조 문제자바는 항상 값을 복사해서 대입한다.기본형 (Primitive Type)참조형 (Reference Type)값 복사참조값 복사기본형은 값을 복사해서 대입하기 때문에 각각 별도의 메모리에 존재하게 된다. 이와 달리 침조형은 객체의 메모리 주소(참조값)를 복사한다. 따라서 같은 객체를 여러 참조형 변수가 참조할 수 있으며, 이로 인해 하나의 변수가 객체 값을 변경하게 되면 다..

  • format_list_bulleted Tech Stack/Java
  • · 2024. 8. 12.

[Java] Object 클래스와 객체 지향

자바의 Object 클래스 역할을 왜 제대로 이해해야 할까? Object 클래스는 객체 지향 프로그래밍의 핵심 원리를 이해하는 데 필수적이기 때문이다. Object 클래스의 개념과 역할, 주요 메서드를 살펴보며 Object 클래스와 객체 지향에 대해 알아보고자 한다. Object 클래스와 상속 Object 클래스는 자바에서 모든 클래스의 최상위 부모 클래스 역할을 한다. 자바의 모든 클래스는 암묵적으로 Object 클래스를 상속받으며, 따라서 모든 객체는 Object 클래스를 사용할 수 있다. 이는 객체 지향 프로그래밍의 '상속(Inheritance)'과 관련이 있다.  Object 클래스는 상속을 통해 모든 객체에 필요한 공통적으로 필요한 기능을 제공한다. 예를 들어, 객체의 정보를 제공하는 toStr..

  • format_list_bulleted Tech Stack/Java
  • · 2024. 8. 11.
  • navigate_before
  • 1
  • navigate_next
category
  • 분류 전체보기 (8)
    • CS (0)
      • 네트워크 (0)
      • 운영체제 (0)
      • 알고리즘 & 자료구조 (0)
      • 데이터베이스 (0)
    • Tech Stack (7)
      • Java (6)
      • Spring (1)
      • React (0)
    • 머신러닝 & 딥러닝 (1)
      • AI 기초 다지기 (1)
Copyright © bobpul 모든 권리 보유.
SKIN: Copyright © 쭈미로운 생활 All rights reserved. Designed by JJuum.
and Current skin "dev-roo" is modified by Jin.

티스토리툴바