如何停止java的线程一直是一个困恼我们开发多线程程序的一个问题。这个问题最终在Java5的java.util.concurrent中得到了回答:使用interrupt(),让线程在run方法中停止。 简介 在Java的多线程编程中,java.lang.Thread类型包含了一些列的方法start(), stop(), stop(Throwable) and suspend(), destroy() and resume()。通过这些方法,我们可以对线程进行方便的操作,但是这些方法中,只有start()方法得到了保留。 在Sun公司的一篇文章《Why are Thread.stop, Thread.suspend and Thread.resume Deprecated? 》中详细讲解了舍弃这些方法的原因。那么,我们究竟应该如何停止线程呢? 建议使用的方法 在《Why are Thread.stop, Thread.suspend and Thread.resume Deprecated? 》中,建议使用如下的方法来停止线程: private volatile Thread blinker;
public void stop() {
blinker = null;
}
public void run() {
Thread thisThread = Thread.currentThread();
......
String usrHome = System.getProperty("user.home");
下面是System的参数列表
Key Meaning
------------------- ------------------------------
"file.separator" File separator (e.g., "/")
"java.class.path" Java classpath
"java.class.version" Java class version number
"java.home" Java installation directory
"java.vendor" Java vendor-specific string
"java.vendor.url" Java vendor URL
" ......
熟悉 Java语言及面向对象设计思想
具有扎实的Java编程功底和良好的编码规范
熟悉Jsprvlet开发(Model1、Model2)
熟悉MVC设计模式
熟练掌握HTML语言、JavaScript脚本语言、XML语言
熟练掌握Webwork框架,能够熟练运用Webwrok框架进行web层的开发
熟练掌握Struts2框架,能够熟练运用Struts2框架进行web层的开发
掌握Struts1框架,能够熟练运用Struts1架进行web层的开发
熟练掌握Hibernate框架,了解其ORM原理,能都熟练运用Hibernate框架进行持久层的开发
熟练掌握Spirng框架,了解依赖注入机制(DI)及面向切面编程(AOP),能够熟练运用Spring集成Webwrok、 Struts2、Struts1、Hibernate等框架进行web开发。
掌握Factory、Singleton、DAO、VO等常见的Java基本设计模式
掌握Ibatis、Ajax,在开发中能够运用
掌握 Oracle 9i、SqlServer 等数据库
了解Ant、Log4j、Junit、xdoclet等辅助开发工具
了解Dom解析XML 、CV ......
Wireless Application Programming with J2ME and Bluetooth
1. http://developers.sun.com/mobility/midp/articles/bluetooth1/
Part II: The Java APIs for Bluetooth Wireless Technology
2. http://developers.sun.com/mobility/midp/articles/bluetooth2/
JSR 82: JavaTM APIs for Bluetooth
3. http://www.jcp.org/en/jsr/detail?id=82
JSR 82 Bluetooth API and OBEX API
4. http://java.sun.com/javame/reference/apis/jsr082/
Bluetooth for Java
5. http://ajava.org/book/j2me/1100.html
Java Bluetooth HOWTO
6. http://www.caside.lancs.ac.uk/java_bt.php
Using the Java APIs for Bluetooth Wireless Technology, Part 1 - API Overview
7. http://developers.sun.com/mobility/apis/articles/bluetoothintro/index.html
Using the Java APIs for Bluetooth, Part 2 - Putting the Core APIs to Work
8. http://developers.sun.com/mobility/apis/articles/bluetoothcore/
Porting the Bluetooth Optional Package
9. http://java.sun.com/javame/reference/docs/sjwc-2.0-web/docs/OptionalAPIs-II-html/jsr082.html
Using the JSR-82 API ......
1 聚合
只要类中结合了对象的实例,无论个数多少都存在 聚合的关系,
聚合是关联的一种特殊形式,它意味着一种整体 / 部分( whole/part )的关系。
白色菱形直线代表聚合的关系 表示Whole 使用了Part
类中访问控制
+代表 public的属性或者方法
-代表 private的属性和方法
#代表 protected的属性和方法
2 关联
类之间的关联大多用来表示变量实例持有着对其他对象的引用。
在箭头前加上黑色箭头 表示关联的关系
这里表示 Phone类 使用了Button
3 组合式一种特殊的聚合关系
UML 对组合的定义:
①如同聚合,实例不能有循环。
②一个被所有者实例不能同时有两个所有者。
③ 所有者负责被组合的对象的生命周期的管理。如果所有者被销毁,被所有者也必须跟着一起被销毁,如果所有者被复制,被所有者也必须跟着一起被复制。基于此点,可以用组合来描述深拷贝。
下图为非法组合:
......
Java发展到现在,按应用来分主要分为三大块:J2SE,J2ME和J2EE。这三块相互补充,应用范围不同。
J2SE就是Java2的标准版,主要用于桌面应用软件的编程;
J2ME主要应用于嵌入是系统开发,如手机和PDA的编程;
J2EE是Java2的企业版,主要用于分布式的网络程序的开发,如电子商务网站和ERP系统。
先学习j2se
要学习j2ee就要先学习j2se,刚开始学习j2se先建议不要使用IDE,然后渐渐的过渡到使用IDE开发,毕竟用它方便嘛。学习j2se推荐两本书,《java2核心技术一二卷》,《java编程思想》,《java模式》。其中《java编程思想》要研读,精读。这一段时间是基本功学习,时间会很长,也可能很短,这要看学习者自身水平而定。
不要被IDE纠缠
在学习java和j2ee过程中,你会遇到五花八门的IDE,不要被他们迷惑,学JAVA的时候,要学语言本身的东西,不要太在意IDE的附加功能,JAVA编程在不同IDE之间的转换是很容易的,过于的在意IDE的功能反而容易耽误对语言本身的理解。目前流行的IDE有jbuilder,eclipse和eclipse的加强版WSAD。用好其中一个就可以了,推荐从eclipse入手j2ee。因为Jbuilder更适合于写j2se程序。
选择和学习服务器使用配置
当你有了j2se和IDE的经验时,可以开始j2 ......