본문 바로가기

Backend/Java23

Java 기초 문법 : 컬렉션(collection) - Map (3) Java에서 컬렉션이란 데이터의 집합을 의미한다. Collection 인터페이스는 모든 컬렉션의 최상위 인터페이스로 List, Set, Queue 등의 공통 기능을 정의한다. Map의 경우 구조상의 차이로 별도의 인터페이스로 정의되지만 Collection으로 분류된다.  모든 Collection은 저장될 객체의 타입을 지정할 수 있는 제네릭(Generic)타입을 지원한다. Set : 순서가 없는 데이터의 집합으로 데이터의 중복을 허용하지 않는다.구현클래스 : HashSet, TreeSetList : 순서가 있으며(인덱스 존재) 데이터의 중복을 허용한다. 구현클래스 : LinkedList, Vector, ArrayListQueue : 순서가 있으며 요소는 큐의 앞쪽에서 제거되고, 새로운 요소는 뒤쪽에 추가.. 2024. 10. 10.
Java 기초 문법 : 컬렉션(collection) - Set (2) Java에서 컬렉션이란 데이터의 집합을 의미한다. Collection 인터페이스는 모든 컬렉션의 최상위 인터페이스로 List, Set, Queue 등의 공통 기능을 정의한다. Map의 경우 구조상의 차이로 별도의 인터페이스로 정의되지만 Collection으로 분류된다.  모든 Collection은 저장될 객체의 타입을 지정할 수 있는 제네릭(Generic)타입을 지원한다. Set : 순서가 없는 데이터의 집합으로 데이터의 중복을 허용하지 않는다.구현클래스 : HashSet, TreeSetList : 순서가 있으며(인덱스 존재) 데이터의 중복을 허용한다. 구현클래스 : LinkedList, Vector, ArrayListQueue : 순서가 있으며 요소는 큐의 앞쪽에서 제거되고, 새로운 요소는 뒤쪽에 추가.. 2024. 10. 10.
Java 기초 문법 : 컬렉션(collection) - List (1) OpenJDK 21 / Collection — DevDocs DevDocs devdocs.io Java에서 컬렉션이란 데이터의 집합을 의미한다. Collection 인터페이스는 모든 컬렉션의 최상위 인터페이스로 List, Set, Queue 등의 공통 기능을 정의한다. Map의 경우 구조상의 차이로 별도의 인터페이스로 정의되지만 Collection으로 분류된다.  모든 Collection은 저장될 객체의 타입을 지정할 수 있는 제네릭(Generic)타입을 지원한다. Set : 순서가 없는 데이터의 집합으로 데이터의 중복을 허용하지 않는다.구현클래스 : HashSet, TreeSetList : 순서가 있으며(인덱스 존재) 데이터의 중복을 허용한다. 구현클래스 : LinkedList, Vector, Arra.. 2024. 10. 10.
Java 기초 문법 : 제네릭(generic) 제네릭(Generic) 타입은 Java 5 이후에 추가된 기능으로, 클래스, 인터페이스, 메서드를 정의할 때 타입 파라미터를 사용하여 외부에서 지정할 수 있게 한다. 제네릭을 사용하면 같은 로직으로 다양한 타입의 객체를 처리할 수 있으며, 컴파일러 시에 타입 파라미터에 해당하는 타입 또는 해당 타입의 자식 클래스 객체만이 할당되도록 검증한다. 이로 인해 잘못된 타입의 객체가 사용될 경우 오류를 사전에 발견할 수 있다.제네릭 클래스 : class 클래스명{}제네릭 메서드 : 리턴타입 메서드명(매개변수){}  타입 파라미터 제네릭을 정의할 때 사용하는 식별자는 아래와 같다. 원하는 대로 이름을 사용할 수 있지만, 아래의 약어들은 제네릭 프로그래밍에서 통상적으로 사용되는 약어이다. E : Element (컬.. 2024. 10. 8.
JAVA : 레코드(Record)에 대해서 Record는  JDK 16에서 도입된 클래스로, record로 정의된 객체의 필드 값은 한 번 설정되면 변경되지 않는다. 이를 통해 데이터의 일관성을 유지할 수 있다. 또한 record는 생성자, getter 메서드, toString메서드 등이 메서드들이 자동으로 생성되어 기존 클래스를 작성할 때보다 간결하게 객체를 생성할 수 있다. public record 클래스명(){}Recod 사용하기1. Record 작성하기package com.example;public record Person(String name, int age, boolean attendance) {} 2. Record 사용하기레코드 클래스의 인스턴스를 생성하면, 따로 getter 메서드를 작성하지 않아도 getter메서드가 자동으로 생성.. 2024. 10. 7.
Java 기초 문법 : JVM 메모리구조 JVM(자바 가상 머신, Java Virtual Machine)은 자바 프로그램의 실행 환경을 제공하는 소프트웨어다. 자바 코드를 바이트 코드(컴퓨터가 이해할 수 있는 기계어)로 변환하고, 이를 통해 어떤 운영 체제에서도 자바 코드를 실행할 수 있게 해준다.JVM의 작동원리는 (1) 자바파일(.java) 생성 후 자바 컴파일러(javac)에 의해 바이트 코드(.class)로 변환하고, (2) JVM을 통해서 바이트 코드를 컴퓨터가 이해할 수 있는 바이너리 코드로 변환하여 실행한다.  JVM의 메모리구조JVM은 3가지 모듈을 가지고 있다. Garbage Collector (GC) 더 이상 사용하지 않는 객체를 감지하고 메모리에서 제거하여 메모리를 회수하는 역할을 한다.  Execution Engine바이트.. 2024. 10. 7.