Skip to content

20201123

Han edited this page Nov 23, 2020 · 2 revisions

회고

Sunny

  • 이번 챕터가 지금까지 해온 프로젝트랑 관련이 있어서, 좀 더 와닿았다.

Han

  • 생소하다.
  • 다음주 상황봐서, 오프라인으로!
  • 공부하는 시간 배분을 조금 더 생각해봐야겠다.
    • 이번에도 9시에 끝내는 것을 목표로 하자.

David

  • 초반에는 어렵게 느껴졌는데, 보면 볼수록 쉬워졌음.
  • 내용적으로 재밌었다.
    • 제네릭에 대해 쓰기만 하다가, 제대로 배움을 얻은 느낌.
    • 아직 좀 비워있는 내용들이 있지만, 다른 아이템들을 읽으면 구멍이 채워질 듯 하다.

Items

[아이템 26]

  • 다양한 소스를 참고하자. (자바봄 뿐만 아니라, 다른 소스들도 확인하자)
  • 런타임에 제네릭 정보가 지워지는 것은 Java 5 이전에, 하위 호완성을 유지하기 위함.
  • Void 객체

[아이템 27]

[아이템 28]

  • 배열 covariant (공변)
    • 컴파일 타입에는 통과하지만, 런타임에는 오류가 발생할 수 있음.
  • 제네릭 inconvariant (불공변)
    • 제네릭을 사용하게 되면, 컴파일 타임에 검사를 해서 프로그래머로 하여금 타입을 고치도록 만들어준다.
    • 이런 속성 때문에, 제네릭을 사용하는 게 좋다
  • 제네릭 배열 생성이 안되는 이유?
    • 배열은 공변. 런타임 시 오류 발생할 수 있다.
    • 그러므로 아예 생성하지 못하도록 만들자.

[아이템 29]

  • Stack<int>, Stack<double> 왜 못하게 막아놨을까?
    • Java 시스템의 기본적인 문제라 생각되지만....
    1. int, double type을 구분할 수 없어서..?
    2. Generic이라는 게 Object 하위만 판단..?

[아이템 30]

  • static method의 경우, Type Parameter를 Class에서 가져오는 것.

다음주...

아이템 배분

image

스터디 준비

image

Clone this wiki locally