易截截图软件、单文件、免安装、纯绿色、仅160KB
热门标签: c c# c++ asp asp.net linux php jsp java vb Python Ruby mysql sql access Sqlite sqlserver delphi javascript Oracle ajax wap mssql html css flash flex dreamweaver xml
 最新文章 : java

【转】Java double 相加的怪事情

(本文转载自:http://hi.baidu.com/edilyxin/blog/item/27dc152aba3e10315343c19c.html)
问题的提出:  
编译运行下面这个程序会看到什么?  
public   class   Test{  
          public   static   void   main(String   args[]){  
                  System.out.println(0.05+0.01);  
                  System.out.println(1.0-0.42);  
                  System.out.println(4.015*100);  
                  System.out.println(123.3/100);  
      & ......

通过Java几行代码截取屏幕

通过java.awt.Robot的createScreenCapture截屏。
    public static void captureScreen(String fileName) throws Exception {
    Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();
    Rectangle screenRectangle = new Rectangle(screenSize);
    Robot robot = new Robot();
    BufferedImage image = robot.createScreenCapture(screenRectangle);
    ImageIO.write(image, "png", new File(fileName));
    } ......

C/C++于Java之间的互相调用

利用JNI技术,可以做到C/C++与Java之间的相互调用。
1、Java调用C/C++接口
这个是JNI最基本的应用,JNI有很多这方面的例子代码。一般把C/C++写成动态链接库;在Java程序在LoadLibrary,利用native接口,即可完成调用。
2、C/C++回调Java接口
这种用法,JNI的例子比较少。其实,也比较简单,JNI也提供了这样的接口。比如,GetObjectClass,GetMethodID,CallObjectMethod,NewObject,FindClass等接口,即可完成C/C++对Java接口的调用。
另外,需要注意的一个地方是,关于signature。比如,在 jmethodID GetMethodID(jclass clazz, const char *name,
 const char *sig) 函数中的第三个参数,就需要函数的signature。那怎么知道Java方法的signature呢?
其实JDK,提供了查看Java方法的signature。方法如下:
(1)、CMD,去到xxx.class所在的目录。
(2)、输入命令:javap -s xxx
(3)、结果呈现在你眼前。
延伸:Android NDK也类似,同样可以做到C/C++与Java之间的互调。 ......

C/C++于Java之间的互相调用

利用JNI技术,可以做到C/C++与Java之间的相互调用。
1、Java调用C/C++接口
这个是JNI最基本的应用,JNI有很多这方面的例子代码。一般把C/C++写成动态链接库;在Java程序在LoadLibrary,利用native接口,即可完成调用。
2、C/C++回调Java接口
这种用法,JNI的例子比较少。其实,也比较简单,JNI也提供了这样的接口。比如,GetObjectClass,GetMethodID,CallObjectMethod,NewObject,FindClass等接口,即可完成C/C++对Java接口的调用。
另外,需要注意的一个地方是,关于signature。比如,在 jmethodID GetMethodID(jclass clazz, const char *name,
 const char *sig) 函数中的第三个参数,就需要函数的signature。那怎么知道Java方法的signature呢?
其实JDK,提供了查看Java方法的signature。方法如下:
(1)、CMD,去到xxx.class所在的目录。
(2)、输入命令:javap -s xxx
(3)、结果呈现在你眼前。
延伸:Android NDK也类似,同样可以做到C/C++与Java之间的互调。 ......

C/C++于Java之间的互相调用

利用JNI技术,可以做到C/C++与Java之间的相互调用。
1、Java调用C/C++接口
这个是JNI最基本的应用,JNI有很多这方面的例子代码。一般把C/C++写成动态链接库;在Java程序在LoadLibrary,利用native接口,即可完成调用。
2、C/C++回调Java接口
这种用法,JNI的例子比较少。其实,也比较简单,JNI也提供了这样的接口。比如,GetObjectClass,GetMethodID,CallObjectMethod,NewObject,FindClass等接口,即可完成C/C++对Java接口的调用。
另外,需要注意的一个地方是,关于signature。比如,在 jmethodID GetMethodID(jclass clazz, const char *name,
 const char *sig) 函数中的第三个参数,就需要函数的signature。那怎么知道Java方法的signature呢?
其实JDK,提供了查看Java方法的signature。方法如下:
(1)、CMD,去到xxx.class所在的目录。
(2)、输入命令:javap -s xxx
(3)、结果呈现在你眼前。
延伸:Android NDK也类似,同样可以做到C/C++与Java之间的互调。 ......

Java/JSP中文乱码问题解决心得

Java/JSP中文乱码问题解决心得
自从接触Java和JSP以来,就不断与Java的中文乱码问题打交道,现在终于得到了彻底的解决,现将我们的解决心得与大家共享。
一、Java中文问题的由来
Java的内核和class文件是基于unicode的,这使Java程序具有良好的跨平台性,但也带来了一些中文乱码问题的麻烦。原因主要有两方面,Java和JSP文件本身编译时产生的乱码问题和Java程序于其他媒介交互产生的乱码问题。
首先Java(包括JSP)源文件中很可能包含有中文,而Java和JSP源文件的保存方式是基于字节流的,如果Java和JSP编译成class文件过程中,使用的编码方式与源文件的编码不一致,就会出现乱码。基于这种乱码,建议在Java文件中尽量不要写中文(注释部分不参与编译,写中文没关系),如果必须写的话,尽量手动带参数-ecoding GBK或-ecoding gb2312编译;对于JSP,在文件头加上<%@ page contentType="text/html;charset=GBK"%>或<%@ page contentType="text/html;charset=gb2312"%>基本上就能解决这类乱码问题。
本文要重点讨论的是第二类乱码,即Java程序与其他存储媒介交互时产生的乱码。很多存储媒介,如数据库,文件,流等的存储方式都是基于字节流的,Java程序与这 ......

Java/JSP中文乱码问题解决心得

Java/JSP中文乱码问题解决心得
自从接触Java和JSP以来,就不断与Java的中文乱码问题打交道,现在终于得到了彻底的解决,现将我们的解决心得与大家共享。
一、Java中文问题的由来
Java的内核和class文件是基于unicode的,这使Java程序具有良好的跨平台性,但也带来了一些中文乱码问题的麻烦。原因主要有两方面,Java和JSP文件本身编译时产生的乱码问题和Java程序于其他媒介交互产生的乱码问题。
首先Java(包括JSP)源文件中很可能包含有中文,而Java和JSP源文件的保存方式是基于字节流的,如果Java和JSP编译成class文件过程中,使用的编码方式与源文件的编码不一致,就会出现乱码。基于这种乱码,建议在Java文件中尽量不要写中文(注释部分不参与编译,写中文没关系),如果必须写的话,尽量手动带参数-ecoding GBK或-ecoding gb2312编译;对于JSP,在文件头加上<%@ page contentType="text/html;charset=GBK"%>或<%@ page contentType="text/html;charset=gb2312"%>基本上就能解决这类乱码问题。
本文要重点讨论的是第二类乱码,即Java程序与其他存储媒介交互时产生的乱码。很多存储媒介,如数据库,文件,流等的存储方式都是基于字节流的,Java程序与这 ......

java怎么实现分页

1.PaginationTable.java
package com.sinoest.train.common;
import java.util.List;
/**
* 分页表
* @author 李易烜-修改
* 2009-6-17
*/
public class PaginationTable {
private List<?> entryList;//> 数据
private int totalNumOfRows;// 总行数
private int rowsPerPage = 10;// 每页行数
private int beginIndex = 0;//---> 当前页起始行
private int endIndex;//-----> 终止页
private int pageIndex;//----> 当前页
private int pageCount;//----> 总页数
public PaginationTable(){ }
public PaginationTable(int totalNumOfRows, int pageIndex) {
//super();
if(pageIndex<=0){
pageIndex=1;
}
this.totalNumOfRows = totalNumOfRows;
if(totalNumOfRows%rowsPerPage==0){
this.pageCount = this.totalNumOfRows/rowsPerPage;
}else {
this.pageCount = this.totalNumOfRows/rowsPerPage+1;
}
if(pageIndex > pageCount){
pageIndex = pageCount;
}
this.pageIndex = pageIndex;
if(totalNumOfRows > 0){
this.beginIndex = (pageI ......

认识Java虚拟机的内部体系结构

Java虚拟机的内部体系结构也许很少有人去关心,因为对于Java程序员来说,一般只需要跟API打交道就可以了。这些体系结构只是Java虚拟机内部的结构而已。但是如果理解了其内部结构,对于我们开发项目,以及排除系统中的相关故障是由帮助的。
先看看总体结构图,如下:
各部分的主要功能分别是:
1. 类装载子系统:负责Java类型的装载连接以及初始化。Java虚拟机有两种类装载器,启动类装载器和用户自定义类装载器。启动类装载器是JAVA虚拟机实现的一部分,自定义装载器是JAVA程序的一部分。由不同类装载器装载的类将被放在不同的命名空间中。
2. 方法区:方法区主要存储2类信息,一是被装载的类型信息,从class文件流中提取。二是类型中的类(静态)变量。方法区中的信息是所有线程共享的,所以对方法区的数据访问必须设计成为线程安全的。
3. Java堆:存放java运行时创建的所有类实例或数组。一个java虚拟机实例中只存在一个堆空间,所有线程共享,因此设计程序时也要考虑到多线程访问堆数据的同步问题。
4. Java栈:每当启动一个新线程,JAVA虚拟机都会创建一个新的JAVA栈,用于保存线程的运行状态。JAVA栈中的数据都是私有的,线程之间不能相互访问各自的栈。当一个线程 ......
总记录数:6386; 总页数:1065; 每页6 条; 首页 上一页 [596] [597] [598] [599] 600 [601] [602] [603] [604] [605]  下一页 尾页
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号