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 ...
随机推荐
- Java第三周总结&实验报告(1)
总结:不知不觉,到了第三周,回顾这一周,我更加深入了解了main方法,除此之外,学习了两个关键字,一个this,一个static,this在强调属性时,只能放在句首且不能循环调用,static声明用于 ...
- 关于Python学习的一点说明
关于Python学习的一点说明 我是用什么地方的资料来学习python的呢? 答案当然是鼎鼎大名的GitHub了. 5万多星推荐,100天让你从入门到精通,你值得拥有,点我进入查看
- POJ-2528 Mayor's posters (离散化, 线段树)
题目传送门: POJ-2528 题意就是在一个高度固定的墙面上贴高度相同宽度不同的海报,问贴到最后还能看到几张?本质上是线段树区间更新问题,但是要注意的是题中所给数据范围庞大,直接搞肯定会搞出问题,所 ...
- 模板 - 线性递推BM
模数是998244353的话好像NTT可以更快. #include<bits/stdc++.h> using namespace std; typedef long long ll; co ...
- SCUT - 77 - 哈利波特与他的魔法杖
https://scut.online/p/77 METO说是单点更新线段树.要记录哪些点不用再更新,不太清楚具体是要怎么实现? 一个类似的想法是把n个点建一棵平衡树,每次节点变成0之后从树上移除,至 ...
- 最长回文子序列/最长回文子串(DP,马拉车)
字符子串和字符子序列的区别 字符字串指的是字符串中连续的n个字符:如palindrome中,pa,alind,drome等都属于它的字串 而字符子序列指的是字符串中不一定连续但先后顺序一致的n个字符: ...
- C#将MD5后的字符串转为字符数据,随机大小写
一如下代码 public static string GenerateCode(Guid id, DateTime endTime, string Type) { string str = id + ...
- v-cloak解决Vue双大括号闪烁问题
相信不少人和我一样,初次查看一个技术的文档的时候,知识吸收的很慢,因为对这个技术的不熟悉导致不清楚各种操作的应用场景,当我意识到这件事之后,我决定换种学习思路,即以实战为主,卡壳就查文档,会对这个技术 ...
- MySQL Server类型的MySQL 客户端的下载、安装和使用
mysql server 5.5的下载 下载地址:https://dev.mysql.com/downloads/mysql/5.0.html#linux mysql server 5.5的安装 双击 ...
- pandas数据查询(数值、列表、区间、条件、函数)
import pandas as pd # 0 读取数据 df = pd.read_csv("文件路径")#例子是北京一年的天气情况 df.head()#查看表头 # 设定索引为日 ...