Ò׽ؽØÍ¼Èí¼þ¡¢µ¥Îļþ¡¢Ãâ°²×°¡¢´¿ÂÌÉ«¡¢½ö160KB

3.ͨ¹ýJNI¼ÓÔØjavaÐéÄâ»ú

        Ç°ÃæÒѾ­·ÖÎöÁËjavaÃüÁî¼ÓÔØjavaÐéÄâ»úµÄ·½·¨£¬¼´Í¨¹ýJNIºÍÐéÄâ»ú½»»¥¡£Òò´ËÎÒÃÇ¿ÉÒÔºÜÈÝÒ×µÄ×Ô¼ºÐ´ÏàÓ¦µÄÆô¶¯´úÂ룬ʵÏÖÔÚC++³ÌÐòÖÐÖ´ÐÐjava³ÌÐò£¬µ÷ÓÃjavaÀàµÄ·½·¨¡£
     Òª²âÊÔµÄJavaÀà(Test.java)µÄ´úÂëÊÇ£º
public class Test {
public Test(){
System.out.println("Test's constructor");
}
public void sayHello(){
System.out.println("Test object say : Hello!");
}
public static int add(int arg1,int arg2){
return arg1 + arg2;
}

public static void main(String[] args) {
for (int i = 0; i < args.length; i++) {
System.out.println(args[i]);
}
}
}

 
   ¼ÓÔØjvmµÄC++(StartJVM.cpp)´úÂëÈçÏ£º
/*
* startjvm.cpp
*
* Created on: 2010-1-28
* Author: Xiutao Zang
*/
#include <iostream>
#include <jni.h>
using namespace std;
int main()
{
JavaVMOption options[1];
options[0].optionString = "-Djava.class.path=.";
JavaVMInitArgs args;
memset(&args, 0, sizeof(args));
args.version = JNI_VERSION_1_2;
args.nOptions = 1;
args.options = options;
args.ignoreUnrecognized = JNI_FALSE;
JNIEnv *env = 0;
JavaVM *vm = 0;
jint result = JNI_CreateJavaVM(&vm, (void **)&env, &args);
if (result == JNI_OK)
{
cout << "create the jvm successfully!" << endl;
jclass mainClass = env->FindClass("Test");
if (mainClass != 0)
{
cout << "find the main class successfully!" << endl;
jclass stringClass = env->FindClass("java/lang/String");
enum
{
LENGTH = 2
};
const char *mainParams[LENGTH] = { "Hello ", "World!" };
jstring jstringTemp;
jobjectArray mainArgs = env->NewObjectArray(LENGTH, stringClass, 0);
for (int i = 0; i < LENGTH; i++)
{
jstringTemp = env->NewStringUTF(mainParams[i]);
env->SetObjectArrayElement(mainArgs, i, jstringTemp);
}
jmethodID mainID


Ïà¹ØÎĵµ£º

Java IOѧϰ±Ê¼Ç£º×Ö·ûÁ÷

Java IOѧϰ±Ê¼Ç£º×Ö·ûÁ÷
 
×Ö·ûÁ÷µÄ´¦ÀíºÍ×Ö½ÚÁ÷²î²»¶à£¬API»ù±¾ÉÏÍêȫһÑù£¬¾ÍÊǼÆÁ¿µ¥Î»²»Í¬¡£ÁíÍâ×Ö·ûÁ÷»¹ÌṩһЩÆäËûµÄ´¦ÀíÁ÷£¬±ÈÈç°´ÐжÁÈ¡Á÷¡¢×Ö·û´®Á÷µÈµÈ¡£
 
ÏÂÃæ¸ø¸öÀý×Ó¿´¿´£º
 
import java.io.*;
/**
* ×Ö·ûÁ÷²âÊÔ
*
* @author leizhimin 2008-8-27 22:16:44
*/
public cl ......

Javaͨ¹ýXML SchemaУÑéXML

Javaͨ¹ýXML SchemaУÑéXML
 
XMLµÄУÑéÔÚXML´¦ÀíÖзdz£³£¼û£¬Èç¹ûûÓÐÓÐЧµÄ°ì·¨À´Ð£ÑéXMLµÄºÏ·¨ÐÔ£¬ÍùÍù»áµ¼ÖºܶàÎÊÌâ¡£
 
XMLµÄУÑéÊÇͨ¹ýXML Schema£¨XSD£© »òDTDÎļþµÄÓï·¨¹æ·¶À´Ð£ÑéµÄ¡£DTDÏÖÔÚÔ½À´Ô½²»ÊÜ»¶Ó­ÁË£¬ÔÚ´ËÑ¡ÓÃXSDÀ´Ð£Ñé¡£
 
JavaУÑéXMLÊǼþºÍ³¶µ­µÄÊÂÇ飬ÒòΪSunµÄXMLÏà¹ØÈí¼þ°ü» ......

Ñ¡ÔñÅÅÐòËã·¨µÄJAVAʵÏÖ

package Utils.Sort;
/**
*ÀûÓÃÑ¡ÔñÅÅÐò·¨¶ÔÊý×éÅÅÐò£¬Êý×éÖÐÔªËØ±ØÐëʵÏÖÁËComparable½Ó¿Ú¡£
*/
public class ChooseSort implements SortStrategy
{
       /**
       *¶ÔÊý×éobjÖеÄÔªËØÒÔÑ¡ÔñÅÅÐòËã·¨½øÐÐÅÅÐò
     &n ......

Ï£¶ûÅÅÐòËã·¨µÄJAVAʵÏÖ

package Utils.Sort;
/**
*Ï£¶ûÅÅÐò£¬ÒªÇó´ýÅÅÐòµÄÊý×鱨ÐëʵÏÖComparable½Ó¿Ú
*/
public class ShellSort implements SortStrategy
{
       private int[] increment;
       /**
       *ÀûÓÃÏ£¶ûÅÅÐòËã·¨¶ÔÊý×éob ......

java ´úÂëʵÏÖÆ½ºâ¶þ²æÊ÷

/**
 * ƽºâ¶þ²æËÑË÷£¨ÅÅÐò£©Ê÷
 *
 * ƽºâ¶þ²æËÑË÷Ê÷Ë«³ÆÎªAVLÊ÷£¬ËüÒ²ÊÇÒ»¿Ã¶þ²æËÑË÷Ê÷£¬ÊǶԶþ²æËÑË÷Ê÷µÄÒ»ÖָĽø£¬»ò¶¼ÊǾßÓÐÏÂÁÐÐÔÖʵĶþ²æÊ÷£ºËü
 * µÄ×ó×ÓÊ÷ºÍÓÒ×ÓÊ÷¶¼ÊÇÆ½ºâ¶þ²æÊ÷£¬ÇÒ×ó×ÓÊ÷ºÍÓÒ×ÓÊ÷µÄÉî¶ÈÖ®²îµÄ¾ø¶ÔÖµ²»³¬¹ý1¡£
 *
 * ƽºâÒò×Ó£¨Balance Factor,BF£©¶¨ÒåΪ ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ