<객체지향 프로그래밍 53장~57장>
Set 인터페이스 - 1
Set 인터페이스의 정의
- 순서대로 저장되지 않는다 -> iterator () 메서드로 호출
- Collection 하위의 인터페이스
- 중복을 허용하지 않음
- get(i) 메서드가 제공되지 않음 ( Iterator로 순회 )
- 저장된 순서와 출력순서는 다를 수 있음
- 아이디, 주민번호, 사본 등 유일한 값이나 객체를 관리할 때 사용
- HashSet, TreeSet 클래스
HashSet 클래스 ( Set 인터페이스 구현 클래스 )
Hash셋 으로 멤버관리
MemberHashSet 클래스
MemberHashSetTest ( 구현 )
같은 아이디로 멤버를 선언하였을 때
Member 클래스 equals 메서드 재정의
Set 인터페이스 - 2
TreeSet 클래스
- 객체의 정렬에 사용되는 클래스
- 중복을 허용하지 않으면서 오름차순이나 내림차순으로 객체를 정렬 함
- 내부적으로 이진 검색 트리로 구현되어 있음
- 이진 검색 트리에 자료가 저장 될 때 비교하여 저장될 위치를 정함
- 객체 비교를 위해 Comparable 이나 Comparator 인터페이스를 구현 해야 함
TreeSet 클래스로 멤버클래스의 멤버들을 정렬해보자
비교대상 설정
Map 인터페이스 ( 쌍(key, value)으로 구현된 자료구조 , 컬렉션 인터페이스는 하나의 자료구조 )
HashMap 클래스 ( 가장많이 사용 )
-HashTable 클래스는 자바2 부터 제공된 클래스로 Vector 처럼 동기화를 제공 함
-pair 자료를 쉽고 빠르게 관리할 수 있음
TreeMap 클래스 ( TreeSet 과 비슷 )
전체적인 틀
12장 ( 내부클래스, 람다식, 스트림 )
내부 클래스
- 클래스 내부에 구현한 클래스 (중첩된 클래스)
- 클래스 내부에서 사용하기 위해 선언하고 구현하는 클래스
(클래스외부에서는 쓰일 일이 없고 클래스 내부에서만 쓸거면 내부 클래스 선언)
내부 클래스
스태틱 내부 클래스
지역 내부 클래스
익명 내부 클래스
'백엔드 > Java' 카테고리의 다른 글
<FAST CAMPUS>자바 웹개발-객체지향 프로그래밍 (0) | 2021.01.25 |
---|---|
<FAST CAMPUS>자바 웹개발-객체지향 프로그래밍 (0) | 2021.01.24 |
<FAST CAMPUS>자바 웹개발-객체지향 프로그래밍 (0) | 2021.01.19 |
<FAST CAMPUS>자바 웹개발-객체지향 프로그래밍 (0) | 2021.01.18 |
<FAST CAMPUS>자바 웹개발-객체지향 프로그래밍 (0) | 2021.01.12 |
댓글