java多线程中执行多个程序的实例分析

2025-05-29 0 45

我们知道多线程因为同时处理子线程的能力,对于程序运行来说,能够达到很高的效率。不过很多人对于多线程的执行方法还没有尝试过,本篇我们将为大家介绍创建线程的方法,在这个基础上,对程序执行多条命令的方法进行展示。下面我们就来看看具体的操作步骤吧。

1、创建线程对象我们需要用到Thread类,该类是java.lang包下的一个类,所以调用时不需要导入包。下面我们先创建一个新的子类来继承Thread类,然后通过重写run()方法(将需要同时进行的任务写进run()方法内),来达到让程序同时做多件事情的目的。

?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22
import java.awt.Graphics;

import java.util.Random;

public class ThreadClass extends Thread{

public Graphics g;

//用构造器传参的办法将画布传入ThreadClass类中

public ThreadClass(Graphics g){

this.g=g;

}

public void run(){

//获取随机的x,y坐标作为小球的坐标

Random ran=new Random();

int x=ran.nextInt(900);

int y=ran.nextInt(900);

for(int i=0;i<100;i++){

g.fillOval(x+i,y+i,30,30);

try{

Thread.sleep(30);

}catch(Exception ef){

}

}

}

}

2、在主类的按钮事件监听器这边插入这样一段代码,即每按一次按钮则生成一个ThreadClass对象。

?

1

2

3

4
public void actionPerformed(ActionEvent e){

ThreadClass thc=new ThreadClass(g);

thc.start();

}

3、在这里我们生成ThreadClass对象并调用start()函数后,线程被创建并进入准备状态,每个线程对象都可以同时独立执行run()方法中的函数,当run()方法中的代码执行完毕时线程自动停止。

java8多线程运行程序实例

?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21
public class Main {

//method to print numbers from 1 to 10

public static void printNumbers() {

for (int i = 1; i <= 10; i++) {

System.out.print(i + " ");

}

//printing new line

System.out.println();

}

//main code

public static void main(String[] args) {

//thread object creation

Thread one = new Thread(Main::printNumbers);

Thread two = new Thread(Main::printNumbers);

//starting the threads

one.start();

two.start();

}

}

输出

1 2 3 4 5 6 7 8 9 10
1 2 3 4 5 6 7 8 9 10

到此这篇关于java多线程中执行多个程序的实例分析的文章就介绍到这了,更多相关java多线程中执行多个程序内容请搜索快网idc以前的文章或继续浏览下面的相关文章希望大家以后多多支持快网idc!

原文链接:https://www.py.cn/java/jichu/23710.html

收藏 (0) 打赏

感谢您的支持,我会继续努力的!

打开微信/支付宝扫一扫,即可进行扫码打赏哦,分享从这里开始,精彩与您同在
点赞 (0)

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。

快网idc优惠网 建站教程 java多线程中执行多个程序的实例分析 https://www.kuaiidc.com/108981.html

相关文章

发表评论
暂无评论