2025/05/03 5

[Java] int와 Integer과 null

import java.util.PrioirtyQueue;... PriorityQueue prioirtyQueue = new PrioirityQueue(); Integer value = priorityQueue.poll(); // poll()은 큐가 비어있을 경우 null 반환 // int value는 null 값 처리 불가능 // int로 할 경우, NullPointerException이 발생 if (value == null) { // null일 경우 } 컬렉션 자료구조를 사용할 때, 컨테이너가 비어있으면 NullPointException이 발생하는 경우가 종종 있다.이 때, Integer로 반환받으면 null을 처리할 수가 있다. int는..

Java 2025.05.03

[Java] RuntimeException

RuntimeException은JVM의 정상적인 실행 중에 발생하는 예외의 슈퍼 클래스이다.RuntimeException 및 해당 서브 클래스는 unchecked exception이다.unckecked exception은 메서드 또는 생성자의 실행에 의해 발생한다.메서드 또는 생성자 경계 외부로 전파될 경우 메서드 또는 생성자의 throws 절에서 선언될 필요가 없다.예외 처리 구문이 없어도 컴파일 오류가 발생ㅜ하지 않는다.대표적인 RuntimeException1. NullPointerException(객체가 null인 상태에서 해당 객체의 메서드나 필드에 접근하려 할 때 발생)2. ArrayIndexOutOfBoundsException(배열의 인덱스가 범위를 벗어났을 때 발생)3. ClassCast..

Java 2025.05.03

[Java] Queue의 add/offer, remove/poll, element/peek 의 차이

import java.util.Queue;public class Main { public static void main(String[] args) { // Queue 선언 Queue q = new LinkedList(); // 추가 q.add(x); q.offer(x); // 제거 q.remove(); q.poll(); q.clear(); // 맨 앞 값 조회 q.element(); q.peek(); }} 에러를 발생 or null 또는 false 반환 추가add()값 추가 성공 시 true 반환큐가 꽉 찬 경우 IllegalStateException 에러 발생offer()값 추가 성공 시..

Java 2025.05.03

[Java] 접근 제어자

UML 표기법- : private~ : default# : protected+ : public_ (속성이나 메서드 아래의 밑줄 표시) : 정적 멤버public모두가 접근 가능protected상속 / 같은 패키지 내의 클래스에서 접근 가능[default]같은 패키지 내의 클래스에서 접근 가능private본인만 접근 가능 상속을 받지 않았다면 객체 멤버는 객체를 생성한 후 객체 참조 변수를 이용해 접근해야 한다.정적 멤버는 클래스명. 정적 멤버 형식으로 접근하는 것을 권장한다.※ 정적 메소드 (static 메소드) 안에서는 객체 변수 접근이 불가능!!!!public인 정적 변수 pubSt 접근 범위ClassA ClassA.pubStpubStthis.pubSt사용 가능사용 가능사용 가능같은 패키지상속한 경우..

Java 2025.05.03