전체 글129 [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 기초] 자바 예외처리 2 - 예외의 종류(Checked, Unchecked)와 예외 발생(throws, throw) 1 예외의 종류 예외에는 두가지 종류가 있다. "Checked Exception" : 컴파일 단계에서 '체크'되는 예외이다. --> 반드시 처리해줘야 컴파일이 된다. --> 안 그러면 빨간줄. --> 대표적으로 "IOException" : Input,Output 의 자식들 대표 "FileNotFound" "Unchecked Exception" : 컴파일 단계에서 '체크'되지 않는 예외이다. --> 우리가 보게 될 대부분의 예외가 여기에 해당된다. --> "Runtime Exception" 상속받는 자식들 : "Arithmetic, ArrayIndexOutOfBounds 등등 .." 아래사진의 Exception에서 Runtime Exception 가 Unchecked Exception이고 그 이외의 것들이.. 2021. 4. 11. [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. [JAVA 기초] 자바 중첩 클래스 (inner class) / 내부클래스, 외부클래스 익명클래스 1 중첩 클래스의 정의 하나의 클래스 내부에 또 다른 클래스가 내포되어 있는 상태이다. 자바 4대 중첩 클래스로 중첩클래스(inner class) 와 스태틱 중첩 클래스(static inner class) , 로컬 중첩 클래스 (local inner class) , 익명 중첩 클래스 (anonymous inner class) 로 나뉜다. 중첩클래스를 사용하는 방법은 다음과 같다. 2 중첩 클래스(Inner class) 중첩 클래스는 외부클래스가 내부클래스를 감싸고 있는 형태이다. 이 클래스의 특징은 외부클래스가 내부클래스의 멤버를 사용하지 못한다는 것이다. 만약 내부클래스 멤버를 사용하고 싶을 경우 내부클래스의 객체를 발생시키면 사용할 수 있다. 또한 일반 내부클래스 안에서는 static 멤버를 선언할 .. 2021. 4. 10. 이전 1 ··· 4 5 6 7 8 9 10 ··· 22 다음