Java 기초6 [JAVA 기초] 쓰레드(Thread) 2 - 쓰레드 생성방법2 와 쓰레드 우선순위(setPriority) 1 Thread(쓰레드) 생성 쓰레드는 기본적으로 1개의 쓰레드를 갖고 있다. 따라서 순차적 구조로 위에서 시작해 아래로 코드를 실행시킨다. 여기서 쓰레드를 새로 생성시키게 되면 2개 이상의 코드를 동시에 실행시킬 수 있다. 쓰레드의 생성방법 2 1. implements Runnable 한 클래스를 정의. 2. run() 메서드를 오버라이드. 3. Runnable 객체 생성 4. Thread 객체 생성하고 생성자 호출시 Runnalble 객체의 참조값을 생성자 파라미터에 담아줌. 5. Thread 객체.start() 호출. 쓰레드를 생성하는 방법이 두가지인 이유는 자바가 다중상속이 불가하기 때문이다. 따라서 어떤 클래스를 상속받는 클래스에 쓰레드를 적용해야 할 경우 위의 방법으로 쓰레드를 생성한다. Ex.. 2021. 4. 12. [JAVA 기초] 쓰레드(Thread) 1 - 쓰레드 생성방법1 1 Thread(쓰레드) 생성 쓰레드는 기본적으로 1개의 쓰레드를 갖고 있다. 따라서 순차적 구조로 위에서 시작해 아래로 코드를 실행시킨다. 여기서 쓰레드를 새로 생성시키게 되면 2개 이상의 코드를 동시에 실행시킬 수 있다. 쓰레드의 생성방법 1 1. "extends Thread" 쓰레드 클래스를 상속받는 클래스를 작성한다. 2. run()메서드를 오버라이드 한다. 3. 이 클래스를 기반으로 객체를 생성한다. 4. start() 호출하면 적절한 시전에 run() 메서드가 실행된다. run()메서드를 직접호출하지 않는다. strat() 를 호출하면, 적절한 시점에 run()메서드가 자동으로 실행하게 된다. run()의 실행이 완료되면 해당 thread는 종료되고 소멸된다. 아직 실행중인 thread 가 하.. 2021. 4. 12. [JAVA 기초] 자바 예외처리 3 - 사용자 정의 예외(user-defined exception) 와 예외처리 연습문제 1 사용자 정의 예외(user-defined exception) 표준예외 클래스를 사용해도 예외처리를 할 수 업을 경우 직접 예외를 만들어야 한다. 먼저 예외를 만들때 자신의 예외를 checked 로 할 것인지 unchecked 로 할 것인지는 결정해야 한다. API쪽에서 예외를 던졌을 때 사용자쪽에서 그 예외상황을 복구할 수 있다면 checked를 사용한다. 사용자에게 문제를 행결할 기회를 주는 것이면서 예외처리를 강제하는 것이기 때문이다. 하지만 checked를 너무 자주 사용하게 되면 사용자가 힘들다. 때문에 적정선을 찾는 것이 중요하다. 사용자가 API 사용방법을 어겨서 발생하는 문제거나 예외가 이미 발생한 시점에서 그냥 프로그램을 종료하는 것이 덜 위험할 때 uncheked를 사용한다. Ex 다.. 2021. 4. 12. [JAVA 기초] 자바 예외처리1 - try catch finally 1 예외처리 (Exception) 프로그램 실행 도중에 발생하는 오류들을 예외라고 한다. 그리고 이런 예외들을 해결하기 위한 도구가 바로 예외처리이다. 예외가 발생하면 누군가는 그 예외를 처리해야 한다. 내가 예외처리를 하지 않으면, 자바가상머신(JVM)이 대신처리하게 된다. 자바가상머신이 예외를 처리할 때 printStackTrace(에러가 났을 때 콘솔창에 빨간 메세지가 뜨는것) 이 나오고 프로그램이 실행중지된다. 다음은 예외가 발생한 상황의 예제이다. 1 2 3 4 5 6 7 package exception; public class ArithmeticException { public static void main(String[] args) { System.out.print(1); System.out.. 2021. 4. 10. 이전 1 2 다음