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。

    未完待续...

  • 相关阅读:
    Pro*C,oci,occi的作用以及区别联系?
    图片缩放 剪切
    去除DataGridView选中行背景色的方法
    重写DataGridView的sort方法 自定义排序
    很好用的js日历 kimsoftjscalendar 感谢KimSoft
    计时器例子
    gcc与g++有什么区别?
    VB.NET全角半角check
    Java 集合框架(Collection)和数组的排序
    Click Models for Web Search(1) Basic Click Models
  • 原文地址:https://www.cnblogs.com/pangblog/p/3304135.html
Copyright © 2011-2022 走看看