Java -- Thread习题(1)
来源:互联网 发布:网络电影痞子兵王 编辑:程序博客网 时间:2024/06/14 10:59
* 创建一个子线程,完成1-100之间自然数输出。同时主线程也执行同样的操作
*
* 创建多线程的第一种方式:继承java.lang.Thread类
*/
public class Test_Thread {
// 3.创建一个子类的对象
public static void main(String[] args) {
SubThread st = new SubThread();
SubThread st2 = new SubThread();
/*4.调用线程的start()方法,有两个作用:
*(1)启动此线程
*(2)调用相应的run()方法
*/
st.start();
st2.start();
// 一个线程只能够执行一次start()
// st.run(); //没启动多线程,只有一个线程
// 不能通过Tread实现类的对象直接调run()去启动一个线程
for (int i = 1; i < 100; i++) {
System.out.println(Thread.currentThread().getName() + ":" + i);
}
}
}
// 1.创建一个继承于Thread的子类
class SubThread extends Thread{
// 2.重写Thread类的run()方法,方法内实现此子线程要完成的功能
public void run(){
for(int i = 1; i <= 100 ; i++){
System.out.println(Thread.currentThread().getName() + ":" + i);//1-100之间自然数输出
}
}
}
public class Test_practice {
// 创建两个子线程,让其中一个输出1-100之间的偶数,另一个输出1-100之间的奇数
public static void main(String[] args) {
hhh h = new hhh();
ppp p = new ppp();
h.setName("偶数=");
h.start();
p.setName("奇数==");
p.start();
// 匿名类
new Thread(){
public void run(){
System.out.println("我是帅哥!!!!!");
}
}.start();
}
}
class hhh extends Thread{
public void run() {
for (int i = 0; i <= 100; i++) {
if(i % 2 == 0){
System.out.println(Thread.currentThread().getName() + i);
}
}
}
}
class ppp extends Thread{
public void run(){
for (int i = 0; i <= 100; i++) {
if(i % 2 != 0){
System.out.println(Thread.currentThread().getName() + i);
}
}
}
}
//模拟火车站售票窗口,开启三个窗口售票,总票为100张
class Window extends Thread{
static int ticket = 100;
public void run(){
while(true){
if(ticket > 0){
System.out.println(Thread.currentThread().getName() + "售票,票号:" + ticket--);
}else{
break;
}
}
}
}
public class Test_Window {
public static void main(String[] args) {
Window w1 = new Window();
Window w2 = new Window();
Window w3 = new Window();
w1.setName("窗口1");
w2.setName("窗口2");
w3.setName("窗口3");
w1.start();
w2.start();
w3.start();
}
}
- Java -- Thread习题(1)
- JAVA习题(1)
- Java习题1
- Java Thread - 1
- java Thread(1)
- Java --Thread(1)
- Thread系列1-浅析 Java Thread.join()
- Java经典习题(1)
- JAVA 习题
- java习题
- java习题
- Java习题
- Java习题
- java习题
- JAVA习题
- Java习题
- java--习题
- JAVA 习题
- Java语言基础小结8
- localhost与127.0.0.1的区别
- Http get与pos
- 五分钟理解一致性哈希算法(consistent hashing)
- The time interval for the brain
- Java -- Thread习题(1)
- centos7 如何卸载yum 安装的php
- iOS OC和swift更改状态栏的颜色
- 使用CSS完成元素居中的七种方法
- new ActiveXObject("Scripting.FileSystemObject") 未能创建对象的解决方法
- Oracle归档模式下恢复-recover期间归档日志文件使用
- HDOJ2018
- Monte Carlo , 蒙特卡洛算法
- 题目:n个数字(0,1,…,n-1)形成一个圆圈,从数字0开始, 每次从这个圆圈中删除第m个数字(第一个为当前数字本身,第二个为当前数字的下一个数字)。 当一个数字删除后,从被删除数字的下一个继续删除