仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 2113|回复: 19
打印 上一主题 下一主题

[学习教程] 了解下JAVA的Java多线程初学者指南(2):用Thread类创立线程

[复制链接]
蒙在股里 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-18 11:31:56 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
到时我们不用学struts,不用学spring,不用学Hibernate,只要能把jsf学会了,完全可以替代所有的框架,包括AJAX,都知道AJAX并不是新技术,虽说我没深入学习jsf但我认为jsf应该已经能通过其它技术替代AJAX,实现无缝刷新。
在Java中创立线程有两种办法:利用Thread类和利用Runnable接口。在利用Runnable接口时必要创建一个Thread实例。因而,不管是经由过程Thread类仍是Runnable接口创建线程,都必需创建Thread类或它的子类的实例。Thread类的机关办法被重载了八次,机关办法以下:
public Thread( );
public Thread(Runnable target);
public Thread(String name);
public Thread(Runnable target, String name);
public Thread(ThreadGroup group, Runnable target);
public Thread(ThreadGroup group, String name);
public Thread(ThreadGroup group, Runnable target, String name);
public Thread(ThreadGroup group, Runnable target, String name, long stackSize);
Runnabletarget
完成了Runnable接口的类的实例。要注重的是Thread类也完成了Runnable接口,因而,从Thread类承继的类的实例也能够作为target传进这个机关办法。
Stringname
线程的名子。这个名子能够在创建Thread实例后经由过程Thread类的setName办法设置。假如不设置线程的名子,线程就利用默许的线程名:Thread-N,N是线程创建的按次,是一个不反复的正整数。
ThreadGroupgroup
以后创建的线程所属的线程组。假如不指定线程组,一切的线程都被加到一个默许的线程组中。关于线程组的细节将在前面的章节具体会商。
longstackSize
线程栈的巨细,这个值通常为CPU页面的整数倍。如x86的页面巨细是4KB。在x86平台下,默许的线程栈巨细是12KB。
一个一般的Java类只需从Thread类承继,就能够成为一个线程类。并可经由过程Thread类的start办法来实行线程代码。固然Thread类的子类能够间接实例化,但在子类中必需要掩盖Thread类的run办法才干真正运转线程的代码。上面的代码给出了一个利用Thread类创建线程的例子:
  001  package mythread;
  002
  003  public class Thread1 extends Thread
  004  {
  005      public void run()
  006      {
  007          System.out.println(this.getName());
  008      }
  009      public static void main(String[] args)
  010      {
  011          System.out.println(Thread.currentThread().getName());
  012          Thread1 thread1 = new Thread1();
  013          Thread1 thread2 = new Thread1 ();
  014          thread1.start();
  015          thread2.start();
  016      }
  017  }
下面的代码创建了两个线程:thread1和thread2。上述代码中的005至008行是Thread1类的run办法。当在014和015行挪用start办法时,体系会主动挪用run办法。在007利用用this.getName()输入了以后线程的名字,因为在创建线程时并未指定线程名,因而,所输入的线程名是体系的默许值,也就是Thread-n的情势。在011行输入了主线程的线程名。
下面代码的运转了局以下:
main
Thread-0
Thread-1
从下面的输入了局能够看出,第一行输入的main是主线程的名子。前面的Thread-1和Thread-2分离是thread1和thread2的输入了局。
<p>
java是一种面向对象的编程语言,优点是可移植性比较高,最初设计时就是本着一次编写到处执行设计的。可以开发各种应用程序和游戏,不过速度没有c++快,所以一般是不用java来编写应用程序和电脑游戏。
只想知道 该用户已被删除
沙发
发表于 2015-1-21 06:07:55 | 只看该作者
[url]http://www.jdon.com/[/url]去下载,或到同济技术论坛的服务器[url]ftp://nro.shtdu.edu.cn[/url]去下,安装上有什么问题,可以到论坛上去提问。
蒙在股里 该用户已被删除
板凳
 楼主| 发表于 2015-2-5 14:08:46 | 只看该作者
是一种由美国SUN计算机公司(Sun Microsystems, Inc.)所研究而成的语言
再现理想 该用户已被删除
地板
发表于 2015-2-8 23:44:23 | 只看该作者
是一种将安全性(Security)列为第一优先考虑的语言
若相依 该用户已被删除
5#
发表于 2015-2-26 10:03:39 | 只看该作者
如果你学过HTML,那么事情要好办的多,如果没有,那你快去补一补HTML基础吧。其实JSP中的Java语法也不多,它更象一个脚本语言,有点象ASP。
深爱那片海 该用户已被删除
6#
发表于 2015-3-8 13:19:11 | 只看该作者
其实说这种话的人就如当年小日本号称“三个月拿下中国”一样大言不惭。不是Tomjava泼你冷水,你现在只是学到了Java的骨架,却还没有学到Java的精髓。接下来你得研究设计模式了。
透明 该用户已被删除
7#
发表于 2015-3-11 00:32:02 | 只看该作者
所以现在应用最广泛又最好学的就是J2EE了。 J2EE又包括许多组件,如Jsp,Servlet,JavaBean,EJB,JDBC,JavaMail等。要学习起来可不是一两天的事。那么又该如何学习J2EE呢?当然Java语法得先看一看的,I/O包,Util包,Lang包你都熟悉了吗?然后再从JSP学起。
简单生活 该用户已被删除
8#
发表于 2015-3-16 21:56:49 | 只看该作者
有时间再研究一下MVC结构(把Model-View-Control分离开的设计思想)
山那边是海 该用户已被删除
9#
发表于 2015-3-17 16:09:32 | 只看该作者
是一种由美国SUN计算机公司(Sun Microsystems, Inc.)所研究而成的语言
小妖女 该用户已被删除
10#
发表于 2015-3-23 03:53:09 | 只看该作者
自从Sun推出Java以来,就力图使之无所不包,所以Java发展到现在,按应用来分主要分为三大块:J2SE,J2ME和J2EE,这也就是Sun ONE(Open Net Environment)体系。J2SE就是Java2的标准版,主要用于桌面应用软件的编程;J2ME主要应用于嵌入是系统开发,如手机和PDA的编程;J2EE是Java2的企业版,主要用于分布式的网络程序的开发,如电子商务网站和ERP系统。
因胸联盟 该用户已被删除
11#
发表于 2015-3-26 23:18:32 | 只看该作者
在全球云计算和移动互联网的产业环境下,Java更具备了显著优势和广阔前景。
兰色精灵 该用户已被删除
12#
发表于 2015-4-1 07:10:34 | 只看该作者
Java 编程语言的风格十分接近C、C++语言。
小魔女 该用户已被删除
13#
发表于 2015-4-5 10:30:15 | 只看该作者
Java是一个纯的面向对象的程序设计语言,它继承了 C++语言面向对象技术的核心。Java舍弃了C ++语言中容易引起错误的指针(以引用取代)、运算符重载(operator overloading)
活着的死人 该用户已被删除
14#
发表于 2015-4-21 12:52:58 | 只看该作者
Java自面世后就非常流行,发展迅速,对C++语言形成了有力冲击。Java 技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于个人PC、数据中心、游戏控制台
柔情似水 该用户已被删除
15#
发表于 2015-4-24 10:07:55 | 只看该作者
学Java必读的两个开源程序就是Jive和Pet Store.。 Jive是国外一个非常著名的BBS程序,完全开放源码。论坛的设计采用了很多先进的技术,如Cache、用户认证、Filter、XML等,而且论坛完全屏蔽了对数据库的访问,可以很轻易的在不同数据库中移植。论坛还有方便的安装和管理程序,这是我们平时编程时容易忽略的一部份(中国程序员一般只注重编程的技术含量,却完全不考虑用户的感受,这就是我们与国外软件的差距所在)。
海妖 该用户已被删除
16#
发表于 2015-6-23 09:41:41 | 只看该作者
Java自面世后就非常流行,发展迅速,对C++语言形成了有力冲击。Java 技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于个人PC、数据中心、游戏控制台
第二个灵魂 该用户已被删除
17#
发表于 2015-7-8 14:18:54 | 只看该作者
我大二,Java也只学了一年,觉得还是看thinking in java好,有能力的话看英文原版(中文版翻的不怎么好),还能提高英文文档阅读能力。
谁可相欹 该用户已被删除
18#
发表于 2015-7-10 10:36:30 | 只看该作者
吧,现在很流行的Structs就是它的一种实现方式,不过Structs用起来实在是很繁,我们只要学习其精髓即可,我们完全可以设计自己的MVC结构。然后你再研究一下软件Refactoring (重构)和极限XP编程,相信你又会上一个台阶。 做完这些,你不如整理一下你的Java代码,把那些经典的程序和常见的应用整理出来,再精心打造一番,提高其重用性和可扩展性。你再找几个志同道合的朋友成立一个工作室吧
灵魂腐蚀 该用户已被删除
19#
发表于 2015-7-11 08:52:08 | 只看该作者
Sun公司看见Oak在互联网上应用的前景,于是改造了Oak,于1995年5月以Java的名称正式发布。Java伴随着互联网的迅猛发展而发展,逐渐成为重要的网络编程语言。
变相怪杰 该用户已被删除
20#
发表于 2015-7-12 19:57:01 | 只看该作者
让你能够真正掌握接口或抽象类的应用,从而在原来的Java语言基础上跃进一步,更重要的是,设计模式反复向你强调一个宗旨:要让你的程序尽可能的可重用。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-12-22 21:49

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表