zoukankan      html  css  js  c++  java
  • java学习笔记-Thread

    java定义了创建线程的两种方法
    1.实现Runnable接口
    2.扩展Thread类本身

    1.实现Runnable接口:

    可以依托任何Runnable接口的对象来创建线程。但是为了实现Runnable接口,类需要实现run()方法。

    创建了实现Runnable接口的类之后,可以在类中实例化Thread类型的对象。Thread类定义了几个构造函数,下面实例中使用的构造函数如下:

    Thread(Runnable threadOb,String threadName) //该构造函数中,threadOb是实现了Runnable接口的类的实例或对象;

    实例:

    实现Runnable接口的类NewThread代码:

    public class NewThread implements Runnable{
    	Thread t;
    	public NewThread() {
    		//this是实现Runnable接口的类的实例
    		t=new Thread(this,"Demo Thread");
    		System.out.println("Child thread:"+t);
    		t.start();
    	}
    	
    	public void run() {
    		try {
    			for(int i=5;i>0;i--)
    				System.out.println("Child thread:"+i+":"+Thread.currentThread());
    			Thread.sleep(500);
    		} catch (InterruptedException e) {
    			System.out.println("Child Interrupted.");
    		}
    		System.out.println("Exiting Child thread.");
    	}	
    }

    测试类ThreadDemo代码:

    public class ThreadDemo {
    
    	public static void main(String[] args) {
    		// TODO Auto-generated method stub
    		new NewThread();
    		try{
    			for(int i=5;i>0;i--){
    				System.out.println("Main Thread:"+i+":"+Thread.currentThread());
    				Thread.sleep(1000);
    			}
    		}catch (InterruptedException e) {
    			System.out.println("Main thread Interrupted.");
    		}
    		System.out.println("Exiting Main thread.");
    	}	
    }

    运行结果如下图:

    ps:Thread.currentThread()方法输出的是当前线程线程名称,优先级5,线程所处的线程组main。

    未完待续...

  • 相关阅读:
    基础知识
    显示功能
    监听器
    检测session是否为空
    W7-Web服务器[JavaWeb]
    D9-哈希表[Java数据结构和算法]
    D8-查找算法[Java数据结构和算法]
    D7-排序算法(三)[Java数据结构和算法]
    W6-junit、泛型、枚举、增强for、可变参数、反射[JavaWeb]
    D6-排序算法(二)[Java数据结构和算法]
  • 原文地址:https://www.cnblogs.com/pangblog/p/3304135.html
Copyright © 2011-2022 走看看