전체 글

· JAVA개념
데몬 쓰레드(daemon thread) - 일반 쓰레드(non-daemon thread)의 작업을 돕는 보조적인 역할을 수행 - 일반 쓰레드가 모두 종료되면 자동적으로 종료된다. - 가비지 컬렉터, 자동저장, 화면 자동갱싱 등에 사용된다. - 무한루프와 조건문을 이용해서 실행 후 대기하다가 특정조건이 만족되면 작업을 수행하고 다시 대기하도록 작성한다. boolean isDaemon() - 쓰레드가 데몬 쓰레드인지 확인한다. 데몬 쓰레드에면 true를 반환 void setDaemon(boolean on) - 쓰레드를 데몬 쓰레드로 또는 사용자 쓰레드로 변경 - 매개변수 on을 true로 지정하면 데몬 쓰레드가 된다. --> setDaemon(boolean on)은 반드시 start()를 호출하기 전에 실행..
· JAVA개념
public class ThreadEx6 { public static void main(String[] args) { String input = JOptionPane.showInputDialog("아무 값이나 입력하세요."); // 입력을 하지 않으면 프로그램은 이 부분에서 멈추게 됨 System.out.println("입력하신 값은 " + input + "입니다."); // 이 작업을 멀티 쓰레드로 바꿔보자 for(int i = 10; i>0; i--) { System.out.println(i); try {Thread.sleep(1000); }catch(Exception e) {} } } } 싱글 쓰레드 이용한 예제 - 화면에 값을 입력하지 않으면 프로그램은 String input = JOptionPa..
· JAVA개념
프로세스와 쓰레드(process & thread) -> 프로세스 : 실행중인 프로그램, 자원(메모리, CPU)과 쓰레드로 구성 -> 쓰레드 : 프로세스 내에서 실제 작업을 수행. 모든 프로세스는 최소한 하나의 쓰레드를 가지고 있다. -> 프로세스 : 쓰레드 = 공장 : 일꾼 -> 싱글 쓰레드 프로세스 = 자원(공장) + 쓰레드(일꾼) 일꾼이 한명 -> 멀티 쓰레드 프로세스 = 자원 + 쓰레드 + 쓰레드 + ... + 쓰레드 일꾼이 여러명 - "하나의 새로운 프로세스를 생성하는 것보다 하나의 새로운 쓰레드를 생성하는 것이 더 적은 비용이 든다" - 2프로세스 1 쓰레드 vs. 1프로세스 2 쓰레드 - 공장을 하나 더 짓는 것보다 일꾼을 늘리는 방안이 더 효율적이다. 멀티쓰레드의 장단점 - 대부분의 프로그램..
· JAVA개념
StringBuffer() - 16문자를 담을 수 있는 버퍼를 가진 StringBuffer 인스턴스를 생성한다. StringBuffer sb = new StringBuffer(); StringBuffer(int length) - 지정된 개수의 문자를 담을 수 있는 버퍼를 가진 StringBuffer인스턴스를 생성한다. StringBuffer sb = new StringBuffer(10); StringBuffer(String str) - 지정된 문자열 값(str)을 갖는 StringBuffer 인스턴스를 생성한다. StringBuffer sb = new StringBuffer("스트링버퍼"); StringBuffer append(boolean b) StringBuffer append(char c) Stri..
· JAVA개념
String클래스에서는 equals 메서드를 오버라이딩해서 문자열의 내용을 비교하도록 구현되어 있지만 StringBuffer클래스는 equals 메서드를 오버라이딩하지 않아서 StringBuffer클래스의 equals 메서드를 사용해도 등가비교연산자(==)로 비교한 것과 같은 결과를 얻는다. 반면에 toString()은 오버라이딩되어 있어서 StringBuffer인스턴스에 toString()을 호출하면, 담고 있는 문자열을 String으로 반환한다. 그래서 StringBuffer인스턴스에 담긴 문자열을 비교하기 위해서는 StringBuffer인스턴스에 toString()을 호출해서 String인스턴스를 얻은 다음, 여기에 equals 메서드를 사용해서 비교해야 한다. public class StringB..
· JAVA개념
프로그램 오류 - 프로그램이 실행 중 어떤 원이에 의해서 오작동을 하거나 비정상적으로 종료되는 경우가 있다. - 이러한 결과를 초래하는 원인을 프로그램 에러 또는 오류라고 한다. 1. 컴파일 에러 - 컴파일 시에 발생하는 에러 - 소스코드 컴파일 -> 컴파일러가 소스코드(*.java)에 대해 오타나 잘못된 구문, 자료형 체크 등의 기본적인 검사를 수행하여 오류가 있는지 알려줌 -> 에러들을 수정하여 클래스 파일(*.class) 생성 2. 런타임 에러 - 실행 시에 발생하는 에러 - 프로그램이 실행 중 독작을 멈춘 상태로 오랜 시간 지속 or 갑자기 프로그램이 실행을 멈추고 종료되는 경우 - 자바에서는 실행 시(runtime)발생할 수 있는 프로그램 오류를 '에러(error)'와 '예외(exception)..
알아가자
초보개발자