클래스 리터럴 ( Class literal ) >- Class 클래스 。Java Reflection API 중 일부로서 특정 클래스와 인터페이스의 메타데이터에 접근할 수 있도록하는 기능을 제공 ▶ 특정 클래스에 대한 정보를 캡슐화하여 메서드로 요청 시 정보를 제공 >
> Serializable interface : 。Java 객체를 직렬화(Selialization)할 수 있도록 하는 인터페이스 ▶ 해당 interface를 상속하여 네트워크를 통해 객체를 전송시 ( Web API ) , 객체를 파일이나 DB에 저장 시 활용
Java의 소켓 관련 Class 소켓개념 및 예제 。Java는 연결방식( TCP , UDP )에따라 2가지 종류의 소켓( Socket , DatagramSocket )을 제공Socket Class 。두 프로세스간 Server-Client 관계로 네트
Data Type내장형( Pre-defined , Bulit-in ) Data TypeNumeric Data Type。int, float, ...Char Data TypeString Data TypeBoolean Data TypeConstant Data Type사용자
java.io。Java에서 I/O를 수행하기위한 Class를 포함하는 패키지▶ 파일 등과 같은 외부로부터의 데이터 송수신을 담당InputStream : java.io.InputStream。Java가 외부로부터 입력된 데이터를 받을 수 있도록 입력통로를 구현하는 Clas
java.util。Java에서 기본적으로 제공하는 Package로서 Stack, Queue 등의 다양한 Collection, 배열에 대한 처리 , 날짜 및 시간 , Random Class 등을 제공하는 packageScanner : import java.util.Sc
배열( Array ) ex ) int\[] , String\[].. 。n개의 요소로 저장된 정수형 배열의 경우 int\[] a = new int\[n] ▶ \[ 0 , 0 , 0 , 0 , 0 ]의 정수형 배열 생성 。배열 : new int\[n] 。배열변수
Annotation : 。Code에 추가적인 Metadata 정보를 제공하는 Java의 기능 중 하나. ▶ Java Compiler에게 특정 동작을 지시하거나 Runtime 시점에서 reflection을 통해 특정 기능을 수행할 수 있도록 설정.
Generics : <Type>。Class를 서로 다른 Type에도 재사용 가능한 코딩을 수행하기 위해 사용. 。처리대상의 자료형에 의존하지 않으면서 Class 또는 Interface를 구현하는 기능.▶ 자료형에 의존하지 않으므로 범용(generic)으로 활용가
함수형 프로그래밍 ( Functional Programming ) 。거의 모든 문제를 분할하면서 순수함수를 통해 해결하는 기법 ▶ 작은 문제를 해결하기 위한 함수를 작성하여 가독성을 높이고 유지보수를 용이하게 설정 >- 순수함수 ( PF : Pure Function

운영체제 - 스레드

Race Condition 구현 OS - Race Condition 。User Thread로 Race Condition 구현하기 。생성된 스레드는 Round Robin 스케쥴링을 통해 각각 문맥교환을 수행하면서
불변 ( Immutablility )。변수 , 객체가 생성된 후에는 상태를 변경할 수 없도록 금지하는 특성JAVA의 불변변수 , 불변객체 불변 변수 ( Immutable Vairable )。변수 앞에 final 키워드를 선언▶ 변수의 재할당을 금지하여 불변특성 부여。
JAVA에서 해시를 기반으로 Key - Value 쌍 데이터를 저장하는 자료구조 ( ex. HashSet , HashMap )에서 Key Type을 클래스로 지정 및 Key 객체를 활용해 Value를 찾을 경우。단순하게 인스턴스 멤버가 동일한 Key 객체를 통해 검색
특정 Class의 객체를 정렬하기 위한 용도로 활용되는 InterfaceComparable<T> , Comparator<T>。해당 두 interface는 정렬목적으로 비교기준으로서 활용되는 방식은 동일하지만 사용방식과 적용위치가 다르다.Comparable&l
Java Stream API : java.util.Stream 。Java 8에서 추가된 기능으로서 람다식을 이용하여 데이터들을 조작 및 가공하여 원하는 값으로 반환하는 인터페이스 ▶ 원본 데이터를 조회하여 별도의 인터페이스 구현체를 생성하여 데이터를 가공하더
Record :。JDK16에서 추가된 기능으로서 새로운 Class type으로 변경불가한 불변객체를 쉽게 구축. ▶ 기존 class와 유사하지만 더 간결하고 효율적으로 불변객체를 생성 가능 。주로 불변객체 생성 시 사용하는 방식 ▶ 불변객체를 생성 시 Getter
정적 팩토리 메서드 ( Static Factory Method )。자바 클래스 내 객체 생성자 용도로 활용되는 static으로 선언된 메서드▶ 클라이언트에게 객체 생성과정을 캡슐화하여 내부구현을 외부로부터 숨길 수 있다.。생성자와 달리 메서드명을 임의로 설정할 수 있음
Optional<T> : java.util.Optional。JAVA 8에서 등장하여 NPE ( NullPointerException ) 발생을 사전에 방지하고자 Null이 올 수 있는 값을 감싸는 Wrapper 클래스 ▶ Null인 값이 왔을때 대응을 메소드로 정

Garbage Collector :。사용하지않는 HEAP 영역 상의 자바객체를 JVM에 의해 자동으로 메모리 해제하는 기능 ▶ STACK 영역의 변수는 메서드 호출이 끝난 경우 자동으로 메모리 해제되지만 HEAP 영역의 객체는 언제까지 사용되는지 예측이 어
자기참조형 ( Self-Referential Type ) 。객체가 자기자신을 참조하거나, 같은 Class Type 객체를 참조하는 용도로 활용되는 클래스 구조 。재귀적구조 또는 연결자료구조를 구축 시 주로 활용 ex ) 연결리스트는 각 노드가 동일한 Typ
함수형 인터페이스( Functuional Interface ) 。추상메소드가 오직 1개만 정의된 인터페이스 ▶ 인터페이스 구현체를 생성하기위해 추상메소드를 1개로 제한 ex ) Runnable 인터페이스의 경우에도 오직 1개의 추상메서드 ( run() )만 존
람다 표현식 ( Lambda Expression ) = 익명함수 ( Anonymous Function ) (int x , int y) -> { x + y } 。JAVA 8에서 추가된 기능으로서 함수형 인터페이스 구현체 생성 시 추상 메서드 구현을 간결하게 표현