본문 바로가기

분류 전체보기129

[JAVA Project] 미니 프로젝트 리듬게임 만들기 2 - 배경 음악 설정 (JLayer) 인트로 음악은 다음의 사이트에서 다운받았다. 저작권이 없는 mp3 파일을 다운받아야 한다. 구글에 no copyright 를 치고 원하는 mp3파일 다운받아도됨. 필자가 사용한 음악 파일은 아래에 첨부해놨다. www.bensound.com/royalty-free-music/electronica JavaLayer | Support for JavaLayer at SourceForge.net Click URL instructions: Right-click on the ad, choose "Copy Link", then paste here → (This may not be possible with some types of ads) More information about our ad policies source.. 2021. 4. 15.
[JAVA Project] 미니 프로젝트 리듬게임 만들기 1 - 창 생성과 배경화면 설정 자바 라이브러리만을 이용하여 리듬게임을 만들어 볼것이다. 창을 생성하고 창의 세부 설정을 해준 뒤 배경화면을 창 크기에 맞게 설정해 준 뒤 실행하는 동안 이미지가 계속 다시 불려와지도록 설정. (버퍼링방지) 게임을 실행하는 Main 클래스와 창을 생성할 DynamicBeat 클래스를 따로 만들어준다. 화면 크기는 1280 * 720 으로 설정, 해당 백그라운드 이미지는 아래에 첨부해놨다. Main 1 2 3 4 5 6 7 8 9 10 11 12 13 14 package beat; public class Main { public static int SCREEN_WIDTH = 1280; public static int SCREEN_HEIGHT = 720; // 가로세로 세팅해준다. public static .. 2021. 4. 15.
[JAVA 기초] 쓰레드(Thread) 4 - 쓰레드의 상태 싸이클과 제어 메서드 1 쓰레드의 상태 싸이클 New 상태 : "new MyThread();"한 상태, 아직은 JVM은 이를 'Thread'라고 생각하지 않음. Runnable 상태 : "start();" 한 상태와 Waiting 상태에서 (ex. interrupt(),notify(),notifyall() 해줬을 때 이제 JVM은 이를 'Thread'라고 생각함. JVM의 '쓰레드 스케줄러'에 의해서 선택될 수 있는 상태. Running 상태 : "run();" 가 실행되고 있는 상태. Blocked 상태 : Waiting 상태라고도 한다. (ex. sleep(), join() wait() 등) 쓰레드가 잠시 정지된 상태 Dead 상태 : Thread 실행에 필요한 관련 정보들이 메모리로부터 소멸되어 사라진 상태. 쓰레드가 .. 2021. 4. 13.
[JAVA 기초] 쓰레드(Thread) 3 - 동기화(Synchronized)와 데몬쓰레드(Daemon Thread) 1 동기화(Synchronized) 두 쓰레드가 같은 프로세스 내의 자원을 공유하기 때무네 서로의 작업에 영향을 준다. 예를 들어 통장에 10만원이 있고 다른 두 ATM기기에서 돈을 꺼내려 한다. 두 ATM 기기에서 만약 6만원 6만원씩 꺼낼 수도 있기 때문에 동시에 출금이 가능하게 해서는 안된다. 따라서 한 ATM 기기를 사용할때 락을 걸어 다른 ATM에서 접근하지 못하도록 해야할 것이다. 이처럼 한 쓰레드에서 사용하는 자원을 다른 쓰레드가 간섭하지 못하도록 락(rock)을 거는 것을 쓰레드의 동기화라고 한다. 여러개의 메서드들이 공유 객체를 사용할 때 동기화를 시켜줬을 경우 0.000001초라도 메서드가 먼저 실행되면 해당 객체에 사용권을 얻게된다. 이 사용권을 모니터링 락이라고 부른다. 이렇게 되면.. 2021. 4. 13.