易截截图软件、单文件、免安装、纯绿色、仅160KB

Java线程:创建与启动

 
SCJP5学习笔记
 
一、定义线程
 
1、扩展java.lang.Thread类。
 
此类中有个run()方法,应该注意其用法:
public void run
()
如果该线程是使用独立的 Runnable
运行对象构造的,则调用该 Runnable
对象的 run
方法;否则,该方法不执行任何操作并返回。
 
Thread
的子类应该重写该方法。
2、实现java.lang.Runnable接口。
 
void run
()
使用实现接口 Runnable
的对象创建一个线程时,启动该线程将导致在独立执行的线程中调用对象的 run
方法。
 
方法 run
的常规协定是,它可能执行任何所需的操作。
 
二、实例化线程
 
1、如果是扩展java.lang.Thread类的线程,则直接new即可。
 
2、如果是实现了java.lang.Runnable接口的类,则用Thread的构造方法:
Thread(Runnable target)
Thread(Runnable target, String name)
Thread(ThreadGroup group, Runnable target)
Thread(ThreadGroup group, Runnable target, String name)
Thread(ThreadGroup group, Runnable target, String name, long stackSize)
 
三、启动线程
 
在线程的Thread对象上调用start()方法,而不是run()或者别的方法。
 
在调用start()方法之前:线程处于新状态中,新状态指有一个Thread对象,但还没有一个真正的线程。
 
在调用start()方法之后:发生了一系列复杂的事情
启动新的执行线程(具有新的调用栈);
该线程从新状态转移到可运行状态;
当该线程获得机会执行时,其目标run()方法将运行。
 
注意:对Java来说,run()方法没有任何特别之处。像main()方法一样,它只是新线程知道调用的方法名称(和签名)。因此,在Runnable上或者Thread上调用run方法是合法的。但并不启动新的线程。
 
 
四、例子
 
1、实现Runnable接口的多线程例子
/**
* 实现Runnable接口的类
*
* @author leizhimin 2008-9-13 18:12:10
*/

public
class
DoSomething implements
Runnable {
    private
String name;
    public
DoSomething(String name) {
        this
.name = name;
    }
    public
void
run() {
      &nb


相关文档:

sql 2005 存储过程分页 java 代码

 create PROCEDURE pagelist
@tablename nvarchar(50),
@fieldname nvarchar(50)='*',         
@pagesize int output,--每页显示记录条数
@currentpage int output,--第几页
@orderid nvarchar(50),--主键排序
@sort int,--排序方式,1表示升序,0表示降序排列 ......

java 日期格式化字符串

 /**
  SimpleDateFormat函数语法:
 
  G 年代标志符
  y 年
  M 月
  d 日
  h 时 在上午或下午 (1~12)
  H 时 在一天中 (0~23)
  m 分
  s 秒
  S 毫秒
  E 星期
  D 一年中的第几天
  F 一月中第几个星期几
  w 一年 ......

分类排序方法——上移下移操作(Java版)

 最近项目中遇到了上移下移操作的一个操作,以前也看到过,但一直没有去研究过,这次项目中遇到了,也就去研究了一把,其实实现原理也挺简单的,说白了就是
要记录数据库里的要进行排序表的总记录数量,然后根据循环的次数,多写几个隐藏变量,进行上移下移操作的时候进行判断就可以了。
    &n ......

Java下的框架编程(4)

 



1.因为两者的用途不同,所以Annotation与XML应该并存
 Anootation vs XML 到了现在,在Spring和EJB3各占一边的持续演示下,各自的用途已清晰。
   虽然两者之间完全可以相互替代,没有绝对不能做的事情,但却存在好不好的问题,两者的用途不同,应该并用:
   "size=10, ......

Java 程序内存分析

   java程序内存主要分为了2个部分,包括 stack segment(栈内存)、heap segment(堆内存)。
    在分析Java程序内存分配情况时,我们从下面这个经常被使用的例子开始吧。
    下面程序将打印什么呢?
   
Java代码
String s1 = new S ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号