Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
Tags
- 성장기록
- Java
- #스파르타내일배움캠프TIL
- Diary 해우소
- 클래스
- 스파르타내일배움캠프TIL
- #스파르타내일배움캠프
- Git
- 스파르타내일배움캠프
- 내일배움캠프
- 인스턴스
- Github_token
- 회고록
- diary
- TiL_1st_0419
- 객체지향 언어
- 해우소
- GitHub
- 포맷은 최후의 보루
- static
- Token
- Java의 이점
- 메서드
- 감사기록
- KPT
- 생성자
- JVM
- #내일배움캠프
- 스레드
- 변수의 다양성
Archives
- Today
- Total
몬그로이
한 클래스는 한가지 인터페이스만 구현할까? 본문
답부터 말하자면
'아니다'
LinkedList 클래스는 Java에서 두 가지 인터페이스인 Queue와 List를 모두 구현했다
Java에서는 인터페이스의 다중 구현이 가능하기 때문이다
LinkedList 클래스는 Qeue의 선입선출(FIFO) 동작을 지원하는 Queue 인터페이스를 구현하면서도
데이터의 순서를 유지하는 List의 특성을 가지고 있다
따라서 LinkedList는 Queue와 List의 모든 동작을 수행하며
Queue와 List의 모든 메서드를 구현한다
이러한 다중 구현은 유연성을 제공하며
상황에 따라 LinkedList를 Queue 또는 List의 생성자로 사용될 수 있다
< 인터페이스를 다중으로 구현한 클래스들>
ArrayList
List와 RandomAccess 인터페이스
List는 순서가 있는 데이터의 집합을 나타내며
RandomAccess는 빠른 임의 접근을 제공하는 마커 인터페이스이다
HashMap
Map과 Serializable 인터페이스
Map은 키-값 쌍의 집합을 나타내며
Serializable은 클래스에 직렬화 기능을 준다
더보기
직렬화된 객체는 바이트 스트림으로 변환되어 파일에 쓰거나 네트워크로 전송될 수 있다
반대로, 직렬화된 객체는 역직렬화(Deserialization) 과정을 통해 다시 객체로 변환될 수 있다
HashSet
Set과 Serializable 인터페이스
Set은 순서가 없는 고유한 요소의 집합을 나타내며
Serializable은 클래스에 직렬화 기능을 준다
'Dev 언어 정리 & Self QnA > Java' 카테고리의 다른 글
왜 때문인지 혼란스러웠던 클래스 멤버와 인스턴스 멤버 설명해보기 (0) | 2024.04.25 |
---|---|
이름이 동일한 method? (0) | 2024.04.25 |
인터페이스, 클래스, 인스턴스, 메서드 그리고 생성자? (0) | 2024.04.24 |
ArrayList와 List의 관계? (0) | 2024.04.23 |
컴파일러를 두 번이나 거쳐서 얻는 것? (0) | 2024.04.23 |