TIL

[2022.10.12] 자바 공부 14일차

인생은단짠단짠 2022. 10. 12. 00:37

 

오늘 공부한 것

  • 제너릭
    • 데이터 타입을 상속관계와 상관없이 다양하게 주고 싶을 때 사용
    • 클래스 또는 인터페이스 뒤에 <타입 파라미터>
    • 특징
      • 파라미터 타입이나 리턴타입에 대한 정의를 외부로 미룸
      • 런타임 환경에 아무런 영향이 없는 컴파일 시점의 전처리 기술
    • Object의 문제점
      • Object 객체 변수의 실제 인스턴스 필드나 메서드에 접근하려면 형변환 필요
      • Object 객체 변수의 실제 인스턴스 필드나 메서드에 접근하기 위해 형변환을 잘못할 경우 컴파일러는 이를 잡지 못함
    • 장점
      • 데이터 형 변환 제거
      • 컴파일시 데이터 타입 체크 가능
  • 스레드
    • 정의
      • 한 가닥의 실
      • 한 가지 작업을 실행하기 위해 순차적으로 실행할 코드를 실처럼 이어놓음
      • 코어를 인식하는 논리적 단위
      • 각 프로세스는 최소 1개의 스레드를 가짐
    • 다중 스레딩
      • 하나의 프로그램이 여러 스레드에 할당받아 일을 하는 것
    • 프로세스와 스레드
      • 프로세스는 서로 독립적
      • 멀티 스레드는 하나의 프로세스 내부에 생성되기 때문에 하나의 스레드가 예외를 발생시키면 프로세스 자체가 종료될 수 있음 종속적
    • 스레드 생성
      • thread 클래스를 상속 받은 클래스를 통해 생성
      • Runnable 인터페이스를 구현하고 있는 클래스를 통해 생성
      • Runnable 익명 객체를 인자로 전달하여 생성
    • synchronized
      • 두 스레드 이상이 공유 객체 접근할 수 있는 메서드를 synchronized로 지정

느낀점

제너릭과 스레드에 대해 이렇게 자세히 배운것이 처음인데 이해가 잘되서 좋았다.객체 배열 관련해서 궁금했던 점과 인터페이스 선언 관련해서 강사님께 물어봐서 답답했던게 풀렸다.

'TIL' 카테고리의 다른 글

[2022.10.13] 자바 공부 16일차  (0) 2022.10.13
[2022.10.12] 자바 공부 15일차  (0) 2022.10.12
[2022.10.07] 자바 공부 13일차  (0) 2022.10.07
[2022.10.06] 알고리즘 연습  (1) 2022.10.06
[2022.10.05] 자바 공부 12일차  (0) 2022.10.05