Java中的线程创建基础

       为了能够让程序更加实时高效,线程的使用时一个很好的选择,而多线程是Java的一个很重要的特征。

       关于多线程技术我一直感兴趣但是从来没有研究过,但是每次看到类似的文章都会看一下。比如说,一直比较火的Python和Java有人做过对比。单线程下,Java的运行速度很有优势,但是多线程下两个速度差不多。虽说那时候还没有接触线程的概念,但是大致的结论还是习惯性记了一下。今天先总结一下多线程的基础——创建单个线程。

       写代码如下:

public classThread

{

       public static void main(String args[])

       {

              run();

       }

       public static void run()

       {

              for(int i = 0;i < 10;i++)

              {

                     System.out.println("run" + (i + 1) + " times");

              }

       }

}

       代码的编译执行结果:

E:\WorkSpace\02_技术实践\01_编程语言\05_Java\02_Java从入门到精通\thread_demo>javac Thread.java

 

E:\WorkSpace\02_技术实践\01_编程语言\05_Java\02_Java从入门到精通\thread_demo>java Thread

run 1 times

run 2 times

run 3 times

run 4 times

run 5 times

run 6 times

run 7 times

run 8 times

run 9 times

run 10 times

       这是最初学习Java的代码,但是一直没有意识到的是其实上述的代码实现了一个单线程操作。只不过,线程的入口是main方法,执行完所有的代码后自然结束。把上述代码修改一下:

class ThreadDemoextends Thread

{

       ThreadDemo(){};

      

       ThreadDemo(String szName)

       {

              super(szName);

       }

      

       public void run()

       {

              int i = 0;

              for(i = 0;i < 10;i++)

              {

                     System.out.println("run" + (i + 1) + " times");

              }

       }

 

       public static void main(String[] args)

       {

              ThreadDemo demo = newThreadDemo();

              demo.start();

       }

}

 

 

       代码编译运行结果如下:

E:\WorkSpace\02_技术实践\01_编程语言\05_Java\02_Java从入门到精通\thread_demo>javac ThreadDemo.java

 

E:\WorkSpace\02_技术实践\01_编程语言\05_Java\02_Java从入门到精通\thread_demo>java ThreadDemo

run 1 times

run 2 times

run 3 times

run 4 times

run 5 times

run 6 times

run 7 times

run 8 times

run 9 times

run 10 times

       从上面的结果看出,程序也得到了正确的执行。不过,不同于之前直接调用run方法,这里的方法是调用了一个线程对象的start方法。而这中线程的构建方式是Java中的线程创建基础。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值