仓酷云

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

[学习教程] 了解下JAVA的派生线程类

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

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

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

x
还有就是总有人问我到底该学习什么语言,什么语言有前途,那么我的回答是不论是C,C++,java,.net网页编程,ruby,asp或是其他语言都可以学,编程的关键不是语言,而是思想。
最复杂的编写基于线程的代码的办法之一,就是派生java.lang.Thread类。该线程类是java.lang包的一个成员,在缺省情形下,线程类能够被一切的Java使用程序挪用。为了利用线程类,我们必要懂得Thejava.lang.Thread类中界说的五个办法:
run():该办法用于线程的实行。你必要重载该办法,以便让线程做特定的事情。
start():该办法使得线程启动run()。
stop():该办法同start办法的感化相反,中断线程的运转。
suspend():该办法同stop办法分歧的是,它其实不停止未完成的线程,它仅仅挂起线程,今后还可恢复。
resume():该办法从头启动已挂起的线程。
运转ListA中的程序,运转了局见ListB
ListA:扩大线程类
classTestThreads{
publicstaticvoidmain(Stringargs[]){
classMyThreadextendsThread{
Stringwhich;
MyThread(Stringwhich){
this.which=which;
}
publicvoidrun(){
intiterations=(int)(Math.random()*100)%15;
intsleepinterval=(int)(Math.random()*1000);
System.out.println(which+"runningfor"+iterations+"iterations");
System.out.println(which+"sleepingfor"+sleepinterval+"msbetweenloops");
for(inti=0;<iterations;i++){
System.out.println(which+""+i);
try{
Thread.sleep(sleepinterval);
}catch(InterruptedExceptione){}
}
}
}
MyThreada=newMyThread("ThreadA");
MyThreadb=newMyThread("ThreadB");
MyThreadc=newMyThread("ThreadC");
a.start();
b.start();
c.start();
}
}
ListB:清单A的输入
ThreadArunningfor16iterations
ThreadCrunningfor15iterations
ThreadBrunningfor14iterations
ThreadAsleepingfor305msbetween
loops
ThreadCsleepingfor836msbetween
loops
ThreadBsleepingfor195msbetween
loops
ThreadA0
ThreadC0
ThreadB0
...
ThreadC13
ThreadB13
ThreadA14
ThreadC14
ThreadA15
ListA演示了怎样从现有的Thread类中派生出一个新类。新创立的类重载了run办法。风趣的是,完成run办法不用很严厉,由于Thread类供应一个缺省的run办法,只管它不是出格有效。
在有些场所,我们不克不及复杂地改动指定对象的父类。我们仍旧必要接纳线程。这时候,我们就必要用到Runnable接口。

而学习JAVA我觉得最应该避免的就是:只学习,不思考,只记忆,不实践!
莫相离 该用户已被删除
沙发
发表于 2015-1-21 10:04:08 来自手机 | 只看该作者
如果要向java web方向发展也要吧看看《Java web从入门到精通》学完再到《Struts2.0入门到精通》这样你差不多就把代码给学完了。有兴趣可以看一些设计模块和框架的包等等。
活着的死人 该用户已被删除
板凳
发表于 2015-2-2 22:29:51 | 只看该作者
是一种为 Internet发展的计算机语言
若天明 该用户已被删除
地板
发表于 2015-2-6 13:59:26 | 只看该作者
设计模式是高级程序员真正掌握面向对象核心思想的必修课。设计模式并不是一种具体"技术",它讲述的是思想,它不仅仅展示了接口或抽象类在实际案例中的灵活应用和智慧
海妖 该用户已被删除
5#
发表于 2015-2-6 20:03:12 | 只看该作者
是一种突破用户端机器环境和CPU
变相怪杰 该用户已被删除
6#
发表于 2015-2-18 12:11:03 | 只看该作者
Jive的资料在很多网站上都有,大家可以找来研究一下。相信你读完代码后,会有脱胎换骨的感觉。遗憾的是Jive从2.5以后就不再无条件的开放源代码,同时有licence限制。不过幸好还有中国一流的Java程序员关注它,外国人不开源了,中国人就不能开源吗?这里向大家推荐一个汉化的Jive版本—J道。Jive(J道版)是由中国Java界大名 鼎鼎的banq在Jive 2.1版本基础上改编而成, 全中文,增加了一些实用功能,如贴图,用户头像和用户资料查询等,而且有一个开发团队在不断升级。你可以访问banq的网站
再现理想 该用户已被删除
7#
发表于 2015-3-6 06:24:40 | 只看该作者
自从Sun推出Java以来,就力图使之无所不包,所以Java发展到现在,按应用来分主要分为三大块:J2SE,J2ME和J2EE,这也就是Sun ONE(Open Net Environment)体系。J2SE就是Java2的标准版,主要用于桌面应用软件的编程;J2ME主要应用于嵌入是系统开发,如手机和PDA的编程;J2EE是Java2的企业版,主要用于分布式的网络程序的开发,如电子商务网站和ERP系统。
简单生活 该用户已被删除
8#
发表于 2015-3-9 10:24:26 | 只看该作者
那么我书也看了,程序也做了,别人问我的问题我都能解决了,是不是就成为高手了呢?当然没那么简单,这只是万里长征走完了第一步。不信?那你出去接一个项目,你知道怎么下手吗,你知道怎么设计吗,你知道怎么组织人员进行开发吗?你现在脑子里除了一些散乱的代码之外,可能再没有别的东西了吧!
兰色精灵 该用户已被删除
9#
发表于 2015-3-11 17:30:58 | 只看该作者
当然你也可以参加一些开源项目,一方面可以提高自己,另一方面也是为中国软件事业做贡献嘛!开发者在互联网上用CVS合作开发,用QQ,MSN,E-mail讨论联系,天南海北的程序员分散在各地却同时开发同一个软件,是不是很有意思呢?
透明 该用户已被删除
10#
发表于 2015-3-17 23:51:08 | 只看该作者
Java自面世后就非常流行,发展迅速,对C++语言形成了有力冲击。Java 技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于个人PC、数据中心、游戏控制台
若相依 该用户已被删除
11#
发表于 2015-3-25 07:51:31 | 只看该作者
有时间再研究一下MVC结构(把Model-View-Control分离开的设计思想)
再见西城 该用户已被删除
12#
发表于 2015-3-30 11:05:18 | 只看该作者
你现在最缺的是实际的工作经验,而不是书本上那些凭空想出来的程序。
山那边是海 该用户已被删除
13#
发表于 2015-4-1 18:10:12 | 只看该作者
让你能够真正掌握接口或抽象类的应用,从而在原来的Java语言基础上跃进一步,更重要的是,设计模式反复向你强调一个宗旨:要让你的程序尽可能的可重用。
乐观 该用户已被删除
14#
发表于 2015-4-7 11:45:57 | 只看该作者
你一定会高兴地说,哈哈,原来成为Java高手就这么简单啊!记得Tomjava也曾碰到过一个项目经理,号称Java很简单,只要三个月就可以学会。
蒙在股里 该用户已被删除
15#
发表于 2015-4-11 10:29:42 | 只看该作者
有时间再研究一下MVC结构(把Model-View-Control分离开的设计思想)
小魔女 该用户已被删除
16#
 楼主| 发表于 2015-4-13 02:20:41 | 只看该作者
所以现在应用最广泛又最好学的就是J2EE了。 J2EE又包括许多组件,如Jsp,Servlet,JavaBean,EJB,JDBC,JavaMail等。要学习起来可不是一两天的事。那么又该如何学习J2EE呢?当然Java语法得先看一看的,I/O包,Util包,Lang包你都熟悉了吗?然后再从JSP学起。
精灵巫婆 该用户已被删除
17#
发表于 2015-5-2 20:40:15 | 只看该作者
在全球云计算和移动互联网的产业环境下,Java更具备了显著优势和广阔前景。
灵魂腐蚀 该用户已被删除
18#
发表于 2015-6-5 00:51:04 | 只看该作者
一般学编程语言都是从C语开始学的,我也不例外,但还是可能不学过程语言而直接学面向对象语言的,你是刚接触语言,还是从C开始学比较好,基础会很深点,如果你直接学习JAVA也能上手,一般大家在学语言的时候都记一些语言的关键词,常有的包和接口等。再去做逻辑代码的编写,以后的学习过程都是从逻辑代码编写中提升的,所以这方面都是经验积累的。你要开始学习就从
老尸 该用户已被删除
19#
发表于 2015-6-7 09:20:09 | 只看该作者
Java是一种计算机编程语言,拥有跨平台、面向对java
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2024-5-5 18:08

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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