프로그램이 메모리상태에 올라간 상태가 프로세스 실행되는 단위가 스레드 즉 하나의 프로세스는 하나 이상의 스레드를 가지게 된다. 두개가 동시에 돌아가는 것처럼 보인다. 스레드는 CPU를 점유해서 돌아가게 되는데 CPU를 점유할 수 있는 스케쥴러가 있다. 스케쥴러가 스레드의 CPU를 할당해서 스레드를 수행하도록해줌 package thread; class MyThread extends Thread { @Override public void run() { int i; for(i = 0; i < 200; i++) { System.out.print(i + "\t"); } try { sleep(1000); // 깨어나게 한다. 이터럽트 이셉션을 발생 } catch (InterruptedException e) { Sy..
JAVA Programming
바이트 단위 스트림 InputStream : 바이트 단위 입력 스트림 최상위 클래스 OutputStream : 바이트 단위 출력 스트림 최상위 클래스 추상메소드를 포함한 추상 클래스로 하위 클래스가 구현하여 사용 주요 하위 클래스는 FileInputStream 과 FileOutputStream 사용하기 파일에 (한 바이트씩) 자료를 읽고 쓰는데 사용 입력 스트림은 파일이 없는 경우 예외발생 출력 스트림은 파일이 없는 경우 (파일 생성)하여 출력한다. 한글은 FileWriter , FileReader 를 쓴다. FileInputStream 파일에 바이트 단위로 읽는다. package inputstream; import java.io.FileInputStream; import java.io.FileNotFo..
io 입출력에 있는 Console 클래스는 이클립스와 연동이 안되서 cmd 콘솔 화면에서 해야한다. package streamInputstream; import java.io.Console; // 이클립스와 연동이 안되서 cmd 콘솔 화면에서 해야한다. public class ConsoleTest { public static void main(String[] args) { Console console = System.console(); // 콘솔을 가져오면 된다. System.out.println("이름 : "); String name = console.readLine(); // 한줄 읽기 System.out.println("비밀번호 : "); char[] password = console.readPas..
자바 입출력 스트림 장치하고는 상관없이 자바의 입출력을 추상화 해놓은 스트림이다. 입출력 스트림 이란 ? 네트웍에서 자료의 흐름이 물과 같다는 의미에서 유래 다양한 입출력 장치에 독립적으로 일관성 있는 입출력 방식을 제공한다. 입출력이 구현되는 곳에서는 모두 I/O 스트림을 사용한다 : 키보드 , 파일 디스크 , 메모리 등이 있다. 장치에 무엇이냐 따라서 해당하는 기능이 여러가지고 구현될수있는데 그것들을 추상화 한다 (이미지) 입출력 스트림 구분 I/O 대상 기준 : 입력 스트림 , 출력 스트림 자바의 종류 : 바이트 스트림 , 문자 스트림 스트림의 기능 : 기반 스트림(기본인가) , 보조 스트림(기능보조) 문자 스트림이나 바이트 스트림이나 기반스트림은 읽거나 쓰고 보조스트림은 기반스트림을 서포터해주는 ..
예외 처리 미루기 Throws (미루다) 를 사용하여 예외처리 미루기 Try{} 블록으로 예외를 처리하지 않고 , 메소드 선언부에 throws 를 추가 한다. 예외가 발생한 메소드에서 예외처리를 하지 않고 이 메소드를 호출한 곳에서 예외 처리를 한다는 의미이다. Main() 에서 throws 를 사용하면 가상 머신에서 처리된다. 이 메소드를 호출하는곳에서 처리 package exception; import java.io.FileInputStream; import java.io.FileNotFoundException; public class ThrowsException { // 예외 처리 미루기 public Class loadClass(String fileName , String className) thr..
FileInputStream fis = new FileInputStream("a.txt"); // 파일 읽어오기 없을시 FileNotFoundException 예외처리 Class c = Class.forName(className); 클래스 동적 할당 읽어오기 ClassNotFoundException 예외처리 FileNotFoundException, ClassNotFoundException FileInputStream fis = null; try { fis = new FileInputStream("a.txt"); // 파일을 읽어들인다. // 파일이 없을수 있어서 FileNotFoundException 이 발생 } catch (FileNotFoundException e) { System.out.printl..