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

Java中的transient,volatile和strictfp关键字

Java
中的transient,volatile和strictfp关键字
    如果用transient声明一个实例变量,当对象存储时,它的值不需要维持。例如:
Java
代码
class
 T {  
   transient
 
int
 a;  
//不需要维持
  
   int
 b;  
//需要维持
  
}  
class T {
transient int a; //不需要维持
int b; //需要维持
}
    这里,如果T类的一个对象写入一个持久的存储区域,a的内容不被保存,但b的将被保存。
   
volatile修饰符告诉编译器被volatile修饰的变量可以被程序的其他部分改变。在多线程程序中,有时两个或更多的线程共享一个相同的实例变
量。考虑效率问题,每个线程可以自己保存该共享变量的私有拷贝。实际的变量副本在不同的时候更新,如当进入synchronized方法时。
    用strictfp修饰类或方法,可以确保浮点运算(以及所有切断)正如早期的Java
版本那样准确。切断只影响某些操作的指数。当一个类被strictfp修饰,所有的方法自动被strictfp修饰。
    strictfp的意思是FP-strict,也就是说精确浮点的意思。在Java
虚拟机进行浮点运算时,如果没有指定strictfp关键字时,Java
的编译器以及运行环境在对浮点运算的表达式是采取一种近似于我行我素的行为来完成这些操作,以致于得到的结果往往无法令你满意。而一旦使用了strictfp来声明一个类、接口或者方法时,那么所声明的范围内Java
的编译器以及运行环境会完全依照浮点规范IEEE-754来执行。因此如果你想让你的浮点运算更加精确,而且不会因为不同的硬件平台所执行的结果不一致的话,那就请用关键字strictfp。
你可以将一个类、接口以及方法声明为strictfp,但是不允许对接口中的方法以及构造函数声明strictfp关键字,例如下面的代码:
1. 合法的使用关键字strictfp
Java
代码
strictfp
 
interface
 A {}  
  
public
 
strictfp
 
class
 FpDemo1 {  
    strictfp
 
void
 f() {}  
}  
strictfp interface A {}
public strictfp class FpDemo1 {
strictfp void f() {}
}
2. 错误的使用方法
Jav


相关文档:

java多线程使用Synchronized关键字同步类方

要想解决“脏数据”的问题,最简单的方法就是使用synchronized关键字来使run方法同步,代码如下:
public synchronized void run()
{
 
}
从上面的代码可以看出,只要在void和public之间加上synchronized关键字,就可以使run方法同步,也就是说,对于同一个Java类的对象实例,run方法同 ......

java api 现在

JAVA在线api
2009年06月07日 17:06
1.Hibernate API Documentation (3.2.2.ga)
http://www.hibernate.org/hib_docs/v3/api/
2.Spring Framework API 2.5
http://static.springframework.org/spring/docs/2.5.x/api/index.html
3.Struts 1.3.8 API
http://struts.apache.org/1.3.8/apidocs/index.html
4.Struts 2 Co ......

java与.net的web service相互调用

一:简介
本文介绍了Java与.NET开发的Web Services相互调用的技术。本文包括两个部分,第一部分介绍了如何用.NET做客户端调用Java写的Web Services,第二部分介绍了如何用Java做客户端调用.NET开发的Web Services。  
 
二:项目需要的工具  
WindowsXP Professial(IIS)
  Eclipse3.1(已装好Tomcat axis)
  VS ......

JAVA将内容追加到文件尾部

import java.io.FileWriter;
import java.io.IOException;
import java.io.RandomAccessFile;
/**
 * 将内容追加到文件尾部
 */
public class AppendToFile
{
    /**
     * A方法追加文件:使用RandomAccessFile
     *
    ......

java回调

 1java中排序算法的回调
编写通用的排序代码时,面临的一个问题就是必须根据对象的实际类型来执行比较运算,从而实现正确的运算。程序设计的主要目标就是“将发生变化的东西与保持不变的东西分开” ,在这里保持不变的部分就是程序算法,而每次使用时都要变化的是对象的实际比较算法。所以我们采用回调,将 ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号