복습, 자바 강의, 코테 문제
Queue<Integer> queue = new LinkedList<>(); 큐 생성
삽입 메서드 : 큐의 끝에 요소를 추가
offer() // 큐가 꽉 찰 경우 false 반환하며, 예외 발생 X
add() // 큐가 꽉 찰 경우 예외 발생 O
제거 메서드 : 큐의 앞에서 요소를 꺼내며 삭제
poll() // 큐가 비어 있으면 null 반환
remove() // 큐가 비어 있으면 예외 발생
조회 메서드 : 큐의 앞쪽 요소 조회
peek() // 큐가 비어 있으면 null 반환
element() // 큐가 비어 있으면 예외 발생
Stack<Integer> stack = new Stack<>(); 스택 생성
삽입 메서드 : 스택의 최상단에 요소를 추가
push()
제거 메서드 : 스택의 최상단에서 요소를 꺼내며 삭제
pop()
조회 메서드 : 스택의 최상단 요소 조회
peek()
Deque<Integer> deque = new ArrayDeque<>(); // 데크 생성
삽입 메서드
앞쪽 삽입 : 앞쪽에 요소 추가
addFirst() : 예외 발생 가능
offerFirst() : 실패 시 false 반환
뒤쪽 삽입:뒤쪽에 요소 추가
addLast() : 예외 발생 가능
offerLast() : 실패 시 false 반환
제거 메서드
앞쪽 제거 : 앞쪽 요소 제거 및 반환
removeFirst() : 비어 있으면 예외 발생
pollFirst() : 비어 있으면 null 반환
뒤쪽 제거 : 뒤쪽 요소 제거 및 반환
removeLast() : 비어 있으면 예외 발생
pollLast() : 비어 있으면 null 반환
조회 메서드 : 요소 조회
앞쪽 조회 :
peekFirst() : 비어 있으면 null 반환
뒤쪽 조회 :
peekLast() : 비어 있으면 null 반환
final 클래스 : 변경x 확장x
final 메서드 : 변경x(오버라이딩x)
abstract 클래스 : 추상 메서드를 가지고 있는 클래스 (미완성 클래스)
abstract 메서드 : 선언부만 작성하고 구현부 x
추상 클래스는 인스턴스 생성불가
추상 클래스를 상속받아서 추상 메서드를 구현해야 객체를 생성 가능
부모 타입 참조 변수로 자식 타입 객체를 다루는 것
자식 타입의 참조변수로 조상 타입의 객체를 가리킬 수 없음
상속 관계는 참조변수를 서로 형변환 O, 상속관계가 아니면 형변환 X
자식 타입을 부모 타입으로 형변환 할 때 참조변수 앞에 타입 생략가능, 반대는 생략 불가
instanceof으로 형변환이 가능여부 체크가능
코테 문제 풀다가 스택과 큐로 풀라고 했는데 모르는 부분이라 개념만 찾아서 이해하고 넘어갔다. 아직도 갈 길이 멀다.. 코테는 뭔가 집중이 잘 되는데 강의는 졸려워서 아찔하다.