Java常用工具——java多线程
一、线程的创建
方式一:继承Thread类,重写run()方法
package com.imooc.thread1;
class MyThread extends Thread{
public MyThread(String name) {
super(name);
}
public void run() {
for(int i=1;i<=10;i++) {
System.out.println(getName()+"正在运行~~"+i);
}
}
}
public class ThreadTest1 {
public static void main(String[] args) {
MyThread mt1=new MyThread("线程1");
MyThread mt2=new MyThread("线程2");
mt1.start();
mt2.start();
}
}
2、通过实现Runnable接口创建线程
package com.imooc.thread3;
class PrintRunnable implements Runnable{
@Override
public void run() {
// 重写接口的run()方法
int i=1;
while(i<=10) {
System.out.println(Thread.currentThread().getName()+"正在运行!"+(i++));
}
}
}
public class Test {
public static void main(String[] args) {
// 通过实现Runnable接口创建线程
//1.实例化Runnable接口的实现类
PrintRunnable pr=new PrintRunnable();
//2.创建线程对象
Thread t1=new Thread(pr);
//3.启动线程
t1.start();
PrintRunnable pr2=new PrintRunnable();
//2.创建线程对象
Thread t2=new Thread(pr2);
//3.启动线程
t2.start();
}
}
3、多个线程共享资源
package com.imooc.thread3;
class PrintRunnable implements Runnable{
int i=1;
@Override
public void run() {
// 重写接口的run()方法
while(i<=10) {
System.out.println(Thread.currentThread().getName()+"正在运行!"+(i++));
}
}
}
public class Test {
public static void main(String[] args) {
// 通过实现Runnable接口创建线程
//1.实例化Runnable接口的实现类
PrintRunnable pr=new PrintRunnable();
//2.创建线程对象,参数为同一个对象,多个线程共享对象资源
Thread t1=new Thread(pr);
Thread t2=new Thread(pr);
//3.启动线程
t1.start();
t2.start();
}
}
Java常用工具——java多线程的更多相关文章
- Java常用工具——java字符串
一.String常用字符串 package com.imooc.string; public class StringDemo { public static void main(String[] a ...
- Java常用工具——java集合
一.ArrayList package com.imooc.set; import java.util.ArrayList; import java.util.List; public class A ...
- Java常用工具——java异常
package com.imooc.exception; import java.util.Scanner; public class TryCatchDemo1 { public static vo ...
- Java常用工具——java包装类
一.包装类和基本数据类型 装箱:基本数据类型——包装类 拆箱:包装类——基本数据类型 package com.imooc.wrap; public class WrapTestOne { public ...
- JavaEE-实验一 Java常用工具类编程
该博客仅专为我的小伙伴提供参考而附加,没空加上代码具体解析,望各位谅解 1. 使用类String类的分割split 将字符串 “Solutions to selected exercises ca ...
- Java常用工具+类库合集
1 常用工具 JVisual vm:可以直接通过软件包下载,支持本地以及远程JVM监控 JMH:Java Microbenchmark Harness,测试基准组件,精度可达纳秒级 JITWatch: ...
- Java常用工具类题库
一. 填空题 在Java中每个Java基本类型在java.lang包中都在一个相应的包装类,把基本类型数据转换为对象,其中包装类Integer是___Number__的直接子类. 包装类Inte ...
- JAVA(三)JAVA常用类库/JAVA IO
成鹏致远 | lcw.cnblog.com |2014-02-01 JAVA常用类库 1.StringBuffer StringBuffer是使用缓冲区的,本身也是操作字符串的,但是与String类不 ...
- JAVA常用工具类汇总
一.功能方法目录清单: 1.getString(String sSource)的功能是判断参数是否为空,为空返回"",否则返回其值: 2.getString(int iSource ...
随机推荐
- 13 (H5*) JS第三天 数组、函数
目录 1:数组的定义和创建方式 2:数组的总结 3:for循环遍历数组 4:数组的案例 5:冒泡排序 6:函数的定义 7:函数的参数 8:函数的返回值 复习 <script> /* * * ...
- [Python3 练习] 006 汉诺塔2 非递归解法
题目:汉诺塔 II 接上一篇 [Python3 练习] 005 汉诺塔1 递归解法 这次不使用递归 不限定层数 (1) 解决方式 利用"二进制" (2) 具体说明 统一起见 我把左 ...
- Qt5 对xml文件常用的操作(读写,增删改查)
转自:https://blog.csdn.net/hpu11/article/details/80227093 项目配置 pro文件里面添加QT+=xml include <QtXml>, ...
- Acwing143. 最大异或对
在给定的N个整数A1,A2……ANA1,A2……AN中选出两个进行xor(异或)运算,得到的结果最大是多少? 输入格式 第一行输入一个整数N. 第二行输入N个整数A1A1-ANAN. 输出格式 输出一 ...
- 在 linux 中 find 和 grep 的区别??
Linux 系统中 grep 命令是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹配的行打印出来.grep 全称是 Global Regular Expression Print,表示全局 ...
- MIT 6.824学习笔记4 Lab1
现在我们准备做第一个作业Lab1啦 wjk大神也在做6.824,可以参考大神的笔记https://github.com/zzzyyyxxxmmm/MIT6824_Distribute_System P ...
- 如何在Set集合中避免重复元素
文章翻译自 Avoiding near-duplicates in sets, 作者Paul Hudson @twostraws是一名优秀的Swifter. 这是我第一次翻译,可能有翻译不到位的地方, ...
- centos7 安装pip 和 Django过程
[root@localhost ~]# yum install python-pip 已加载插件:fastestmirror Loading mirror speeds from cached hos ...
- 【记录】解决windows中nginx明明退出了,为什么还能反向代理?CMD强制杀死进程命令
博主今天遇到一个很奇怪的问题,nginx在windows中明明已经退出了,而且在任务管理器中也没发现nginx进程, 为什么还能反向代理呢? 找了半天资料终于解决,现记录如下,希望能帮助到你. 步骤一 ...
- SQLZOO 习题
https://sqlzoo.net 8. 美國.印度和中國(USA, India, China)是人口又大,同時面積又大的國家.排除這些國家. 顯示以人口或面積為大國的國家,但不能同時兩者.顯示國家 ...