728x90
반응형
SMALL

백/Java 10

[Java] 자바(Java) 소켓 통신이란? 동작 원리와 코드

자바를 공부하면서 가장 어려웠던 게 소켓 통신이었습니다... 대학교 수업 때에서도 과제로 나왔는데 확실히 알겠다!는 아니겠더라구요,, 머리가 안돌아가서 그런지,, 아무튼 소켓이 또 많이 중요하죠! 그래서 정리하겠습니다.. 소켓(Socket) 통신이란? 자바에서 소켓 통신은 두 컴퓨터 간의 네트워크 통신을 가능하게 하는 기술입니다. 소켓은 한 컴퓨터에서 다른 컴퓨터로 데이터를 전송하는 통신 엔드포인트를 나타냅니다 자바의 java.net 패키지는 소켓 프로그래밍을 지원하며, TCP/IP 프로토콜을 기반으로 동작합니다. 소켓 통신은 보통 지속적으로 연결을 유지하면서 실시간으로 데이터를 주고받아야하는 경우에는 사용됩니다. 소켓은 클라이언트 소켓과 서버 소켓으로 구분되며, 소켓 간 통신을 위해서는 네트워크 상에서..

백/Java 2023.11.23

[Java] JVM의 개념과 구조

JVM이란? JVM (Java Virtual Machine)은 자바 바이트 코드(.class 파일 형태의 중간 코드)를 실행하기 위한 가상 머신입니다. JVM의 구조 JVM의 구조는 크게 3가지 컴포넌트로 나뉩니다. 클래스 로더, 런타임 데이터 영역, 실행 엔진으로 나뉘어집니다. 클래스 로더 클래스 로더는 JVM이 시작될 때 필요한 .class 파일들을 메모리에 로드하는 역할을 합니다. Loading, Linking, Initializtion 세단계로 이루어집니다. Loading : .class 파일들을 바이트 코드로 읽어와 메모리에 적재합니다. Linking : 검증, 준비, 해석 등의 과정을 통해 바이트 코드가 올바른지 확인하고 정적 변수에 메모리를 할당합니다. Initialization : 모든 정..

백/Java 2023.11.10

[Java] 자바(Java)의 람다식(Lambda)란?

💡 Lambda란? 자바의 람다 표현식(Lambda Expression)은 Java 8부터 도입된 기능으로, 간단하게 메소드를 정의하고 전달 할 수 있는 방법입니다. 람다 표현식은 주로 함수형 인터페이스(Functional Interface)의 인스턴스를 생성할 떄 사용됩니다. 함수형 인터페이스는 메소드가 하나만 정의된 인터페이스를 의미합니다. 불필요한 코드를 줄이고 가독성을 향상시키는 것을 목적으로 두고 있습니다. 📌 Lambda의 특징 1. 익명성 람다식은 이름이 없는 함수입니다. 따라서 일회용 함수를 만드는 데 유용합니다. 2. 함수형 인터페이스 람다식은 함수형 인터페이스에 사용됩니다. 함수형 인터페이스는 하나의 추상메소드를 가진 인터페이스를 말합니다. 3. 표현의 간결성 람다식을 사용하면, 코드의..

백/Java 2023.10.26

[Java] 자바(Java)의 Enum이란?

백엔드 개발자 로드맵에서 처음 보는 Enum을 보고 공부가 필요함을 느꼈답니다... 💡 Enum이란? 자바의 Enum은 열겨형(Enumerated type)을 정의하는 특별한 클래스 타입입니다. Enum은 주로 사전에 정의된 상수 집합을 표현할 때 사용되며, 각 상수는 enum 타입의 객체입니다. 📌 Enum의 정의 및 사용 방법 enum 열거이름 { 상수1, 상수2, 상수3, ---}; //ex) enum Rainbow { RED, ORANGE, YELLOW, GREEN, BLUE, INDIGO, VIOLET } enum 열거 이름 { 상수값 ... } 위와 같이 사용하면서 정의하면 됩니다. ✒️ 문법 열거이름.상수이름 // ex) Rainbow.BLUE ☘️ values() values() 메소드는 ..

백/Java 2023.10.26

[Java] 자바(Java) 어노테이션(Annotation)이란?

자바 스프링 부트 공부하면서 어노테이션(@)을 많이 봤는데 공부를 먼저 해야할 것 같습니다 어노테이션(Annotation)이란? 어노테이션(Annotation)이란 자바 소스 코드에 추가하여 사용할 수 있는 메타데이터의 일종입니다. 어노테이션은 클래스, 메소드, 변수 등에 달아 특정 동작을 유도하거나, 정보를 제공하는 역할을 합니다. 어노텡션은 @ 기호로 시작하며, 예를 들어 가장 자주 사용되는 내장 어노테이션인 @Override는 메소드가 상위 클래스의 메소드를 오버라이드 함을 명시합니다. @Override public String toString(){ return "This is a string"; } 어노테이션(Annotation)의 종류 1. 마커(Marker) 어노테이션 이들은 아무런 매개변수를..

백/Java 2023.10.25

[Java] 자바(Java) 제네릭(Generic)이란?

제네릭(Generic)이란? 제네릭이란 클래스나 인터페이스, 메소드를 정의할 때 타입을 파라미터로 활용할 수 있게 하는 프로그래밍 기법입니다. 제네릭을 사용하면 재사용성이 높아지고, 타입 안정성이 향상되며, 명시적인 타입 변환(casting)을 줄일 수 있습니다. 즉 Generic을 사용하기 전에는 처음부터 타입을 정해줘서 변수를 생성합니다. 하지만 재사용성을 높히기 위해 type을 지정해주지 않고 변수를 사용할 때 type을 정할 수 있도록 합니다. 제네릭 타입 타입 설명 Type Element Key Value Number 출처 : https://st-lab.tistory.com/153 원래 다른 값을 넣어두 되긴 하는데 위 표와 같이 압묵적인 규칙이라구 하네요! 제네릭 사용 방법 접근 지정자 cla..

백/Java 2023.10.24

[Java] 자바(Java)의 컬렉션(Collection)이란?

자바 문법을 공부하면서 collecion이라는 것을 배운 적이 있습니다. 하지만 기억이 가물가물하더라구요,,ㅎ 그래서 정리하겠습니다! 웬만해서는 뤼튼으로 먼저 개념을 간단하게 이해하고 제가 가지고 있는 교재 Java 정복하기로 개념을 살펴보겠습니다. 컬렉션(Collection)이란 "미술품이나 우표, 화폐 등을 수집하는 일 또는 수집"이라고 말합니다. 컴퓨터 과학 기초로 컬렉션은 데이터를 수집한 것이라고 생각하면 됩니다. Collecion Framework란? Collecion Framework는 데이터를 효과적으로 관리하고 조작할 수 있는 표준 클래스를 정의하는 인터페이스를 제공합니다. 즉 설계된 클래스와 인터페이스를 묶어놓은 데이터의 집합, 그룹을 의미합니다. 이러한 클래스들은 다양한 방식으로 데이터..

백/Java 2023.10.23

[Java] 자바(Java) 버전 확인하기

프로젝트를 실행하면서 Java를 자주 사용하는데 Java의 버전을 확인해야할 때가 있습니다. 자바가 아직 설치되어 있지 않으면 아래 포스팅 내용을 확인해주세요! 자바 설치하기 https://gamza1013.tistory.com/86 [Java] 윈도우(Window) Java 17 설치하기 여러군데 찾아보면서 설치했습니다. 1. 오라클 접속하기 https://www.oracle.com/kr/java/technologies/downloads/ Download the Latest Java LTS Free Subscribe to Java SE and get the most comprehensive Java support available, with 24/7 global gamza1013.tistory.com ..

백/Java 2023.10.23

[Java] 자바(Java) JDK 17 환경 변수 설정하기

spring boot를 하기 전에 java 설치하고 환경변수를 해줘야 JDK를 사용할 수 있습니다. 환경변수 전 자바를 설치 여부와 버전 확인이 필요합니다. 아래 포스팅 내용 확인해주세요! 자바 설치하기 : https://gamza1013.tistory.com/86 [Java] 윈도우(Window) Java 17 설치하기 여러군데 찾아보면서 설치했습니다. 1. 오라클 접속하기 https://www.oracle.com/kr/java/technologies/downloads/ Download the Latest Java LTS Free Subscribe to Java SE and get the most comprehensive Java support available, with 24/7 global gamz..

백/Java 2023.10.22

[Java] 윈도우(Window) Java 17 설치하기

여러군데 찾아보면서 설치했습니다. 1. 오라클 접속하기 https://www.oracle.com/kr/java/technologies/downloads/ Download the Latest Java LTS Free Subscribe to Java SE and get the most comprehensive Java support available, with 24/7 global access to the experts. www.oracle.com 오라클에서 Java를 설치합니다. 상단의 JDK 버전을 선택하고 컴퓨터 환경에 맞춰서 설치합니다. 2. JDK 17 윈도우용 다운로드 받기 3. 실행 후 설치 완료 더블 클릭 후 예를 선택합니다. 웬만해서는 모두 예를 선택해주세요 경로도 변경하지 않는게 좋습니다...

백/Java 2023.10.22
728x90