Kosta DevOps 과정 280기/Java109 File메소드 delete()삭제하기package com.kosta.exam01;import java.io.File;//c:/data/bus.pan 파일을 삭제하는 프로그램을 만들어 봅시다.public class FileTest { public static void main(String[] args) { File file = new File("c:/data/saca.txt"); System.out.println("3초 뒤 파일 삭제"); try { Thread.sleep(3000); } catch (InterruptedException e) { e.printStackTrace(); } file.delete(); }}list()디렉토리 내의 파일 목록을 리스트로 가져온다.package com.kosta.. 2024. 6. 4. GUI와 CUI CUI(Character User Interface)사용자와 컴퓨터가 문자로 의사소통하는 환경을 말한다.GUI(Graphic User Interface)사용자와 컴퓨터가 그래픽 요소로 의사소통 하는 것을 말한다. 자바는 GUI를 위한 javax.swing.xxx 패키지와 java.awt.xxxx 패키지를 만들어두었다.화면 구성요소들 JFrame ==> 창JButton ==> 버튼JTextField ==> 한 줄 글자 입력JTextArea ==> 여러줄 글자 입력JLabel ==> 뭐 입력해야할지 표시배치관리자(LayoutManager) : 화면 구성 요소들을 배치하는 관리자FlowLayout : 화면 구성 요소들을 왼쪽에서 오른쪽으로 위에서 아래로 물 흐르듯이 배치하는 관리자이다.package com.k.. 2024. 5. 30. 쓰레드 통신 두개의 쓰레드가 반드시 1:1로 동작하도록 하려면 쓰레드 상의 통신이 필요합니다. 내가 작업을 하고 있는동안에는 '너는 기다려. ', '내가 작업이 끝났으니 너는 일을 해라.'와 같이 쓰레드 사이의 통신을 이용하면 1:1로 동작하도록 만들 수 있다. 예를 들어 "생산자"와 "소비자"가 있다고 할 때 새로운 제춤이 생산되어야지만 소비가 일어나고 소비가 일어나야지만 새로운 제품을 생산하는 경우에는 둘 사이에 생산이 되었는지 소비가 있었는지 서로 통신이 필요하다. 생산자는 소비가 일어날 때까지 기다렸다가 소비가 되면 새로운 제품을 생산하고 소비자는 생산이 일어날 때까지 기다렸다가 새로운 제품이 생산되면 소비가 일어나도록 반드시 1:1로 동작하도록 할 수 있다. 자바에서는 이러한 쓰레드 사이의 통신을 위하여 자.. 2024. 5. 30. 임계영역 (Critical Section) 정의두 개 이상의 쓰레드가 자원을 공유할 때 한 번에 하나의 쓰레드에게만 접근을 허용하는 영역을 말한다.자바에서는 그러한 동작을 하는 메소드 이름 앞에 혹은 그러한 기능을 하는 블럭 {} 앞에 synchronized 키워드를 붙이면, 자동으로 임계영역이 되며 한번에 하나의 쓰레드에게만 접근을 허용하게 된다.쓰레드를 가동시키면 가능하면 동시다발로 공평하게 실행이 되게끔 스케줄링을 해준다. 만약 두개의 객체가 반듸 1대 1로 동작하도록 하려면 쓰레드 사이의 통신을 이용할 수있다.임계 영역을 설정하지 않고 공유 자원에 접근하였을때 발생되는 문제와 구현 코드package com.kosta.exam05;//모금액을 위한 클래스 : 목표 = 500000;public class Account { private int.. 2024. 5. 30. 멀티스레드-2 프로그램 안에서 실행 중인 메소드를 말한다.멀티 쓰레드 : 프로그램 안에서 동시에 여러 개의 메소드가 동시다발로 동작하는 것을 말한다.package com.kosta.exam01;class Person extends Thread{ private String name; public Person(String name) { this.name = name; } @Override public void run() { // TODO Auto-generated method stub for(int i = 1; i 쓰레드 우선순위 설정 객체.setPriority(1~10)우선순위 요청하는 것으로 반드시 그것이 우선적으로 실행된다는 보장이 되지는 않는다.쓰레드의 일반 상수 Thread.MIN_PRIORITY(1) ~ .. 2024. 5. 30. 예외 처리 예외프로그램 실행 중에 발생할 수 있는 예기치 않은 상황(예외)에 대한 처리를 말한다.예외에 대한 예를 들어보면 배열의 크기가 n이면 사용할 수 있는 인덱스는 0 ~ n-1 이다. 그 범위가 아닌 인덱스에 접근하는 상황을 뜻한다. 이 때는 ArrayIndexOutOfBoundsException 객체가 자동생성된다.또한 숫자 형식에 맞지 않으면 NumberFomatException객체가 생성된다.또 어떤 수를 0으로 나누는 상황에 문법 자체에 문법적 오류는 없으나, 실행 중에 사용자의 입력값이 바람직하지 않아 발생할 수 있는 예기치 않는 상황을 뜻한다.자바는 대부분 예기치 않은 상황에 대해서 클래스가 만들어져있다. 그래서 그 상황이 되면 예외 객체를 생성해준다.(오류에 대한 text)예외가 발생했을 때 .. 2024. 5. 28. 문자열 처리 String변하지 않는 문자열(immutable)원래 String 은 참조 자료형이다. 따라서 new String 처럼 사용해야한다. 그러나 문자열은 다른 것들보다 훨씬 더 많이 사용하는 참조 자료형이기 떄문에 마치 기본자료형처럼 쓰는것을 허용한다.+연산 등을 사용할 경우 새 객체가 생성되고 참조 변수는 그 곳을 참조하게 된다. 그 이후 다른 참조변수가 참조하지 않고 있을 경우에는 가비지 컬렉터에 의해 원래 문자열은 지워진다.가비지 컬렉션이 계속 반복될 경우 성능이 떨어질 수 있다. 따라서 계속 데이터를 변경해야 하는 경우 String 보다는 StringBuffer 또는 StringBuilder 를 사용하는 것이 좋다.package com.kosta.exam00;//원래 String 은 참조 자료형이다... 2024. 5. 28. 정규표현식 정규 표현식(正規表現式, 영어: regular expression, 간단히 regexp 또는 regex, rational expression) 또는 정규식(正規式)은 특정한 규칙을 가진 문자열의 집합을 표현하는 데 사용하는 형식 언어이다. String 객체의 match메소드로 확인한다. 이때 \를 쓸 때는 앞에 \를 한번 더 입력해줘야한다.boolean flag = str.matches(regex);regex == String정규 표현식의 종류| : 또는() : 연산자 범위 및 우선권바로 앞 글자에 대한 양에 대한 기호+ :1개 이상의 발생* : 0개 이상의 발생? :0번 또는 1번 발생{n} : 정확히 n번만큼 일치{min, } : min 번 이상만큼 일치{min, max} : min 이상 max 이하.. 2024. 5. 27. 이전 1 ··· 7 8 9 10 11 12 13 14 다음