일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
Tags
- 백준알고리즘
- 프로그래머스 알고리즘 공부
- C
- 자바
- 알고리즘 공부
- 알고리즘공부
- 투자
- 자바스크립트
- algorithmStudy
- C++
- 화장품
- 알고리즘트레이닝
- Java
- 주식
- 프로그래밍언어
- 지혜를가진흑곰
- 책을알려주는남자
- JavaScript
- 돈
- 성분
- 재테크
- 다독
- 채권
- algorithmTest
- algorithmtraining
- 독후감
- 경제
- 독서
- 책알남
- 서평
Archives
- Today
- Total
탁월함은 어떻게 나오는가?
[JAVA] Thread(쓰레드) 사용 예시 본문
반응형
1. Thread 상속받은 코드
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
|
package com.example.demo.javaClass.fourthClass;
// 상속받아서 사용하는 스레드 예
// 이방법은 비추. 이유는 상속은 하나밖에 안되기 때문이다.
class MyThread extends Thread {
@Override
public void run() {
for (int i = 10; i >= 0; i--){
System.out.print(i + " ");
}
}
}
public class MyThreadTest {
public static void main(String[] args) {
Thread t = new MyThread();
t.start();
}
}
|
cs |
2. MyThread를 람다식 적용한 코드
1
2
3
4
5
6
7
8
9
10
11
12
13
14
|
package com.example.demo.javaClass.fourthClass;
// 람다식 적용.
public class TestThread_lambdaExoression {
public static void main(String[] args) {
Runnable task = () -> {
for (int i = 10; i >= 0; i--)
System.out.print(i + " ");
};
new Thread(task).start();
}
}
|
cs |
3. Thread 예시 코드
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
|
package com.example.demo.javaClass.fourthClass;
class MyRunnable implements Runnable {
String myName;
public MyRunnable(String name) { myName = name; }
public void run() {
for (int i = 10; i >= 0; i--)
System.out.print(myName + i + " ");
}
}
public class TestThread {
public static void main(String[] args) {
Thread t1 = new Thread(new MyRunnable("A"));
Thread t2 = new Thread(new MyRunnable("B"));
t1.start();
t2.start();
}
}
|
cs |
4. 카운트다운 프레임 창을 만드는 예시
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
|
package com.example.demo.javaClass.fourthClass;
import javax.swing.*;
import java.awt.*;
// 카운트다운 프레임을 만드는 스레드
public class CountDownTest extends JFrame {
private JLabel label;
class MyThread extends Thread {
public void run() {
for (int i = 10; i >= 0; i--) {
try {
Thread.sleep(1000);
} catch (InterruptedException e) {
e.printStackTrace();
}
label.setText(i + "");
}
}
}
public CountDownTest() {
setTitle("카운트다운");
// 크기조절
setSize(300, 200);
// EXIT_ON_CLOSE : X(종료)버튼을 의미
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
label = new JLabel("Start");
label.setFont(new Font("Serif", Font.BOLD, 100));
add(label);
new MyThread().start();
setVisible(true);
}
public static void main(String[] args) {
CountDownTest t = new CountDownTest();
}
}
|
cs |
반응형
'[Snow-ball]프로그래밍(컴퓨터) > java' 카테고리의 다른 글
[JAVA] 파일포인터(FilePointer) (0) | 2021.03.05 |
---|---|
[JAVA] 자바 압축하기 압축해제 사용법 (0) | 2021.03.05 |
[JAVA] enum: 열거형 함수 (0) | 2021.03.05 |
선언 위치에 따른 변수의 종류 ( 클래스 변수, 인스턴스 변수, 지역 변수 ) (0) | 2021.03.03 |
get 과 set 의 차이 그리고 사용이유 (2) | 2021.02.24 |
Comments