2. Java Tutorials 24

[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

[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] #16 Lesson: Generics 1

안녕하십니까? 열분덜? 오랫만에 왔죠....접니다.. 저에요... Dorothy... 아흐....ㅠ_ㅠ집안에 우환이 왜이리 많은지 ㅠ ㅠ 바람 잘 날 없어서 눈물 콧물 쏘옥 빼고..그래도 공부는 해야하니 거의 일주일 만에 노트북을 펴보는 것 같습니다...열분덜....!!!!! 건강이 최곱니다... 살아야 뭐라도 하죠.. 그쳐?일단 관짝 문닫고 들어가면 비트코인이건 주식이건 아무 소용 없답니다..그니까 운동도 조금은 하는거 어떨까요,,,? (물론 저는 숨쉬기 운동만 합니다) 자,, 오랜만에 돌아와서 좀 말이 많았네요. 시작합니다!!오늘은 제네릭에 대해서 배워볼게요. 집중!!!!부탁드립니day~ 자바 공식 Generics 튜토리얼  1. Why Use Generics? [제네릭의 정의]  제네릭이란 무엇을 ..

2. Java Tutorials 2024.09.17

[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] #14 Lesson: Numbers and Strings [Strings]

안녕하세요,,,,,,,,,,,,,,,,,,,,,,, 요즘 슬럼프인지 가을타는건지,,,, 이래저래 마음잡기 힘든  Dorothy입니다.여름엔 조금만 선선해지면 열심히 살 줄 알았는데 요즘엔 자꾸 매사가 짜증나서 어제는 하루 포스팅도 쉬었어요. (흑흑)무튼 정신차리고 다시 공부를 시작해야겠죠.. ㅠ.ㅠ 집중해주세요!!   1. StringsJava 프로그래밍에서 널리 사용되는 문자열은 일련의 문자입니다. Java 프로그래밍 언어에서 문자열은 객체입니다.Java 플랫폼은 문자열을 생성하고 조작하기 위한 String 클래스를 제공합니다.public final class String implements java.io.Serializable, Comparable, CharSequence { // 내부적으로 문..

2. Java Tutorials 2024.09.04