java 29

[Java Tutorials] #23 Concurrency 1

안녕하세요, Dorothy입니다. 자, 오늘은 동시성과 스레드에 대해서 공부해볼게요. 동시성(Concurency), 첫번째 시간입니다.시작하겠습니다!! 자바 공식 Concurrency 튜토리얼  1. Thread 스레드(Thread)란 프로세스 내에서 실행되는 독립적인 실행 흐름을 말합니다. 프로세스는 운영체제로부터 자원을 할당받아 실행되는 프로그램의 인스턴스를 의미하며, 각각의 프로세스는 하나 이상의 스레드를 가질 수 있습니다.스레드는 프로세스 내에서 코드 실행의 기본 단위로, 동시에 여러 작업을 수행할 수 있습니다. 프로세스는 자신만의 주소 공간, 파일 핸들, 자원 등을 가지고 있지만, 스레드는 프로세스의 자원을 공유하여 실행됩니다. 따라서 스레드는 프로세스 내에서 동시에 여러 작업을 처리하고 서로 ..

2. Java Tutorials 2024.10.03

[Java Tutorials] #22 Lesson: Exceptions

안녕하세요, Dorothy입니다.오늘은 22강 예외(Exceptions)에 대해서 배워보겠습니다. [튜토리얼]자바 프로그래밍 언어는 오류 및 기타 예외적인 이벤트를 처리하기 위해 예외를 사용합니다. 이 레슨에서는 예외를 언제 그리고 어떻게 사용하는지 설명합니다.  1. What Is an Exception? 예외(Exception)는 정상적인 명령 흐름을 방해하는 프로그램 실행 중에 발생하는 이벤트입니다.1) The Catch or Specify Requirement이 섹션에서는 예외를 catch하고 처리하는 방법을 다룹니다. 이 논의는 try, catch, finally 블록뿐만 아니라 chain exception와 logging을 포함합니다.2) How to Throw Exceptions이 섹션에서는..

2. Java Tutorials 2024.09.30

[JPA] JPA(Java Persistence API)란?

안녕하세요, Dorothy입니다.오늘은 JPA에 대해서 공부해보겠습니다. 오늘은 JPA 의 간단한 개념을 알아보고, 그 구성요소 및 예제를 다뤄볼게요. JPA는 짧게 말하자면 JAVA에서 DB와 상호작용하는 표준화 API입니다. 공부해두면 데이터매핑과 관련하여 활용할 곳이 꽤 많겠죠?일단 시작해보겠습니다. 집중해주세요~!!  JPA(Java Persistence API)는 자바 애플리케이션에서 데이터베이스와 상호작용하는 방식을 표준화한 API입니다. JPA를 사용하면 자바 객체를 데이터베이스의 테이블과 매핑하여, 객체 지향 프로그래밍 방식으로 데이터를 다룰 수 있습니다. 이를 통해 SQL 쿼리를 직접 작성하는 번거로움 없이, 자바 코드로 데이터베이스 작업을 수행할 수 있습니다.90퍼가 인터페이스로이루어진..

6. JPA 2024.09.30

[Java Tutorials] #21 Lesson: Annotations

안녕하세요,, Dorothy입니다~~오늘은 어노테이션에대해 공부해보겠습니다.메타데이터와도 관련되어 있는데요, 자자 집중해주세용~ >     가장 간단한 형태의 어노테이션은 메타데이터의 한 형태로, 프로그램 자체의 일부가 아닌 프로그램에 대한 데이터를 제공합니다. 어노테이션은 어노테이션이 달린 코드의 작동에 직접적인 영향을 미치지 않습니다.어노테이션은 여러 용도로 사용됩니다. 그 중 몇 가지는 다음과 같습니다: 컴파일러를 위한 정보 제공 — 어노테이션은 컴파일러가 오류를 감지하거나 경고를 무시하도록 사용할 수 있습니다.컴파일 시점 및 배포 시점 처리 — 소프트웨어 도구는 어노테이션 정보를 처리하여 코드, XML 파일 등을 생성할 수 있습니다.런타임 처리 — 일부 어노테이션은 런타임에 검토할 수 있습니다.이..

2. Java Tutorials 2024.09.27

[Java Tutorials] #20 Lesson: Packages

안녕하세요,,, 감기투병에서 힘겹게 회복중인,,(?) Dorothy입니다..오늘은 패키지와 클래스에 대해서 공부해볼게요.  이 레슨에서는 클래스와 인터페이스를 패키지로 묶는 방법, 패키지에 있는 클래스를 사용하는 방법, 컴파일러가 소스 파일을 찾을 수 있도록 파일 시스템을 정렬하는 방법을 설명합니다. 1. Creating and Using Packages타입을 더 쉽게 찾고 사용할 수 있도록 하고, 이름 충돌을 방지하고, 액세스를 제어하기 위해 프로그래머는 관련 타입 그룹을 패키지로 묶습니다.정의: 패키지는 관련된 타입을 그룹화하여 접근 보호와 이름 공간 관리를 제공하는 것입니다. 여기서 타입은 클래스, 인터페이스, 열거형, 어노테이션 타입을 의미합니다. 열거형과 어노테이션 타입은 각각 클래스와 인터페이..

2. Java Tutorials 2024.09.26

[Java Tutorials] #19 Lesson: Generics 4

제네릭 4번째 시간입니다...  1.  Type Erasure  제네릭은 컴파일 타임에 더 엄격한 타입 체크를 제공하고 제네릭 프로그래밍을 지원하기 위해 Java 언어에 도입되었습니다. 제네릭을 구현하기 위해 Java 컴파일러는 타입 소거(Type Erasure)를 다음에 적용합니다:제네릭 타입에 제한[bounds] 있다면 제한 타입으로, 만약 타입 파라미터가 제한이 없다면 Object로 대체합니다. 따라서 생성된 바이트코드는 일반 클래스, 인터페이스, 메서드만을 포함합니다.타입 안전을 유지하기 위해 필요한 경우 타입 캐스트를 삽입하십시오.확장된 제네릭 타입에서 다형성을 유지하기 위해 브리지 메서드를 생성합니다.타입 소거는 파라미터화된 타입에 대해 새 클래스가 생성되지 않도록 합니다. 결과적으로 제네릭은..

2. Java Tutorials 2024.09.25

[Java tutorials] #18 Lesson: Generics 3

안녕하세요, 미라클 모닝에 드디어 성공한! Dorothy입니다. 으아아아.. 새벽 4시 반 기상이라니 ㄷㄷ근데 치명적인 단점이 하나 있답니다.. 졸려요... 아니, 잠이 와요.. 미친듯이 쏟아져요.아침잠이 많은 사람에게는 너무나도 가혹한 그 미션.. 미라클모닝입니다. 그러나 졸음이 몰려와도 오늘 해야 할 공부는 해야 하는 법이죠, 제네릭3편, 시작해볼게요!! 집중해주세용~!! >     1. Wildcards  일반 코드에서 와일드카드라고 하는 물음표(?)는 알 수 없는 타입을 나타냅니다. 와일드카드는 다양한 상황에서 사용할 수 있습니다. 때로는 리턴 타입으로 사용됩니다(좀 더 구체적으로 프로그래밍하는 것이 더 나은 방법이긴 하지만).와일드카드는 제네릭 메서드 호출, 제네릭 클래스 인스턴스 생성 또는 상..

2. Java Tutorials 2024.09.23

[Java Tutorials] #17 Lesson: Generics 2

안녕하세용? 제가 왔습니다.  Dorothy 입니다!비가 추적추적 추적 60분,, 아 아니지..  (사실,. 저는 아재개그 애호가 입니다. 매니아라고 하면 너무 덕후같아서 너무 의미가 강합니다. 일단은 애호가.. 아니지 아재개그 연구소 소장 정도로 하겠습니다ㅋㅋ) 무튼 오늘은, 제네릭! 그 두 번째 시간입니다! 바로 시작해볼게요. 히뤼고~~  1. Type Inference (타입 유추) 타입 유추는 메서드 호출에 적용할 수 있는 타입 아규먼트(또는 아규먼트)를 결정하기 위해 해당 메소드 호출 및 해당 메서드 선언을 살펴보는 Java 컴파일러의 기능입니다.추론 알고리즘은 타입 아규먼트의 타입과 (가능한 경우)리턴되는 타입을 결정합니다.마지막으로 추론 알고리즘은 모든 아규먼트와 함께 작동하는 특정 타입을 ..

2. Java Tutorials 2024.09.21

[Java Tutorials] #15 Lesson: Numbers and Strings [Autoboxing and Unboxing]

안녕하세요,,,,,,,,, 오랜만에 돌아온  Dorothy 입니다..졸리지만 졸음을 꾹 참고.. 하던 거 이어서 배워보도록 할게요...........어려워도 그냥 하는 수밖엔 없는거 같아요 흑흑....오늘 내용은 간단합니다. 자동변환에 대해서 알아볼게요.  [ Autoboxing and Unboxing ] 오토박싱은 Java 컴파일러가 기본 유형과 해당 객체 래퍼 클래스 간에 수행하는 자동 변환입니다. 예를 들어 int를 Integer로, double을 Double로 변환하는 등의 작업을 수행합니다. 변환이 반대 방향으로 진행되는 경우 이를 언박싱(Unboxing)이라고 합니다.여기 가장 심플한 오토박싱 샘플 코드가 있습니다.Character ch = 'a'; 이 섹션의 나머지 예제에서는 제네릭을 사용합..

2. Java Tutorials 2024.09.09

[Java Tutorials] #13 Lesson: Numbers and Strings [Numbers]

Dorothy 입니다..자, 이어서 더 공부해보도록 하겠습니다.. 점점 더 머리가 혼미해지지만,, 정줄 꼭 붙잡아주세요,,,,,  [공식 튜토리얼] [1] Numbers이 섹션은 Number 클래스(java.lang 패키지에 있음)와 그 하위 클래스에 대한 논의로 시작됩니다. 특히 이 섹션에서는 기본 데이터 유형 대신 이러한 클래스의 인스턴스화를 사용하는 상황에 대해 설명합니다. 또한 이 섹션에서는 자바 언어에 내장된 연산자를 보완하기 위해 서식을 지정하거나 수학 함수를 사용하는 등 숫자 작업에 필요할 수 있는 클래스들에 대해 설명합니다. 마지막으로 코드를 단순화하는 컴파일러 기능인 오토박싱 및 언박싱에 대한 논의가 있습니다. [2] StringsJava 프로그래밍에서 널리 사용되는 문자열은 일련의 문자..

2. Java Tutorials 2024.09.02