기술 블로그

예외처리와 컬렉션 본문

카테고리 없음

예외처리와 컬렉션

jaegwan 2023. 10. 29. 23:51
반응형

Java의 기본적인 부분부터 고급 기능에 대해 이야기해보려 한다. 먼저, Java에서 EOF(End of File)는 입력의 끝을 나타내며, 이를 사용해 무한 루프에서 탈출할 수 있다. ScannerhasNext() 또는 hasNextLine() 메서드를 사용하여 입력 스트림에 다음 토큰 또는 라인이 있는지 확인하고, 없다면 루프를 탈출할 수 있다.

Scanner scanner = new Scanner(System.in);
while (scanner.hasNextLine()) {
    String input = scanner.nextLine();
    System.out.println(input);
}

Java에서 예외 처리는 프로그램이 예외 발생 시 안정적으로 동작하도록 돕는 메커니즘이다. throw 키워드를 사용하면 개발자가 직접 예외를 발생시킬 수 있고, throws 키워드는 메서드가 처리하지 않은 예외를 호출한 곳으로 던지도록 한다. throws를 사용하면 메서드 내부에서 예외 처리를 하지 않고, 메서드를 호출한 곳에서 예외 처리를 하도록 유도할 수 있다.

다음으로 쓰레드와 관련된 내용을 살펴보자. Java에서 쓰레드를 생성하고 실행하는 방법은 두 가지가 있다. 하나는 Thread 클래스를 상속받는 것이고, 다른 하나는 Runnable 인터페이스를 구현하는 것이다. Runnable 인터페이스는 run 메서드만을 가지고 있어, 이 run 메서드를 오버라이딩하여 쓰레드가 실행할 코드를 정의한다.

class MyRunnable implements Runnable {
    public void run() {
        // 쓰레드가 실행할 코드
    }
}

Runnable myRunnable = new MyRunnable();
Thread thread = new Thread(myRunnable);
thread.start();

제네릭은 타입 안정성을 향상시키고 코드 중복을 줄이기 위한 Java의 기능이다. 제네릭을 사용하면 컬렉션에서 저장되는 객체의 타입을 체크할 수 있다. 제네릭에서 사용되는 주요 파라미터는 E(Element), K(Key), V(Value), N(Number) 등이다.

List<String> list = new ArrayList<>();

여기서 String은 리스트의 요소 타입이며, list 변수에는 문자열만 저장할 수 있다.

마지막으로 컬렉션의 종류에 대해 논의하려 한다. 컬렉션은 객체를 그룹화하는데 사용되며, 주로 사용되는 컬렉션에는 List, Set, Queue가 있다. List는 순서를 유지하며 중복을 허용하고, Set은 순서를 유지하지 않으며 중복을 허용하지 않는다. Queue는 FIFO(First In First Out) 방식으로 요소를 관리한다. 배열과 달리 List, Set, Queue는 동적으로 크기가 조절되며, 다양한 메서드를 제공하여 사용이 편리하다.

반응형
Comments