JavaɳÏäµÄʵÏÖ
JavaɳÏäʵÏÖÊÇÖØÐ´Àà¼ÓÔØÆ÷ºÍ°²È«¹ÜÀíÆ÷,ͨ¹ýÉèÖõÄÈ«¾Ö°²È«¹ÜÀíÆ÷À´¿ØÖÆÖ´ÐгÌÐòµÄȨÏÞ
˵Ã÷: °²È«²ßÂÔÖ»¶Ô°²×°°²È«¹ÜÀíÆ÷Ö®ºóµÄÀàÉúЧ,֮ǰµÄÀ಻Ôٴ˹ÜÀí·¶Î§Ö®ÄÚ,ÀûÓÃÕâÒ»µã¿ÉÒÔÔ¤ÏÈÉèÖÃÎÒÃÇÐèÒªµÄ²Ù×÷,¶ø¶Ôij¸öµãÖ®ºóµÄËùÓзǷ¨²Ù×÷½øÐÐȨÏÞÉèÖÃ.
Àà¼ÓÔØÆ÷ÖØÐ´
/**
* [ÖØÐ´µÄÀà¼ÓÔØÆ÷]
* ɳÏä³ÌÐòÀà¼ÓÔØÆ÷,¿É¸ù¾ÝÖ¸¶¨Â·¾¶¼ÓÔØÖÆ¶¨ÀàclassÎļþ.
*
* [˵Ã÷]
* ½ö°üÄڿɼû
*
* @author Áõ½ðöÎ
* @version 1.0
* */
package org.hljoj.core.judge.sandbox;
import java.io.File;
import java.io.FileInputStream;
import org.hljoj.core.judge.util.ConstantParam;
class SandboxClassLoader extends ClassLoader{
/**ĬÈÏclassPath*/
private String _classPath;
/**
* ¹¹Ô캯Êý
* @param classPath Àà¼ÓÔØÆ÷ĬÈÏclassPath
* */
public SandboxClassLoader(String classPath) {
this._classPath = classPath;
}
@Override
protected Class<?> findClass(String className) throws ClassNotFoundException {
return loadClass(_classPath, className);
}
/**
* ¸ü¸ÄÀà¼ÓÔØÆ÷¼ÓÔØÀàµÄclasspath,ÔÚÖÆ¶¨Â·¾¶Ï¼ÓÔØÖÆ¶¨µÄÀàclassÎļþ
* @param classPath Òª¼ÓÔØµÄÀà·¾¶
* @param className Òª¼ÓÔØµÄÀàÃû
* ×îΪÏÞ¶¨,Ö»ÄܼÓÔØ²»º¬°üµÄÀà.
* */
public Class<?> loadClass(String classPath, String className) throws ClassNotFoundException{
if(className.indexOf('.') >= 0) {
throw new ClassNotFoundException(className);
}
File classFile = new File(classPath + ConstantParam.SEPARATOR + className + ".class");
byte[] mainClass = new byte[(int) classFile.length()];
try {
FileInputStream in = new FileInputStream(classFile);
in.read(mainClass);
in.close();
} catch (Exception e) {
//e.printStackTrace();
throw new ClassNotFoundException(className);
}
return super.defineClass(className, mainClass, 0, mainClass.length);
}
/**
* »ñÈ¡classPath
* @return String classPath
* */
public Stri
Ïà¹ØÎĵµ£º
Javaѧϰ´ÓÈëÃŵ½¾«Í¨
Ò»¡¢ JDK (Java Development Kit)
JDKÊÇÕû¸öJavaµÄºËÐÄ£¬°üÀ¨ÁËJavaÔËÐл·¾³£¨Java Runtime Envirnment£©£¬Ò»¶ÑJava¹¤¾ßºÍJava»ù´¡µÄÀà¿â(rt.jar)¡£²»ÂÛʲôJavaÓ¦Ó÷þÎñÆ÷ʵÖʶ¼ÊÇÄÚÖÃÁËij¸ö°æ±¾µÄJDK¡£Òò´ËÕÆÎÕJDKÊÇѧºÃJavaµÄµÚÒ»²½¡£×îÖ÷Á÷µÄJ ......
ÖÐÎĵıàÂë³£ÓõÄÓÐ3ÖÖ¸ñʽ£º1£©gb2312(¾ÍÊÇasciiÂ뷽ʽ£¬Ò²Ëµansi) 2)unicode 3)utf-8
c++Ò»°ã²ÉÓÃanciiÂ룬¶øjavaÒ»°ã²ÉÓÃunicode£¬¶øSymbianC++£¨ÒÔºó¼ò³Æsymbian£©²ÉÓÃunicode»òutf-8
±ÈÈ纺×Ö“ºÃ”£º unicodeΪ“7D 59”£¬¶øasciiΪ“BA C3”, utf-8±àÂëΪ3¸ö×Ö½Ú¡£
ÖÕ¶ËÄã ......
ANT-build.xmlÎļþÏê½â
http://www.diybl.com/course/3_program/java/javajs/20081122/152210.html#
AntµÄ¸ÅÄî
¿ÉÄÜÓÐЩ¶ÁÕß²¢²»Àí½âʲôÊÇAntÒÔ¼°Èë¿ÉʹÓÃËü£¬µ«Ö»ÒªÊ¹ÓÃͨ¹ýLinuxϵͳµÃ¶ÁÕߣ¬Ó¦¸ÃÖªµÀmakeÕâ¸öÃüÁî¡£µ±±à
ÒëLinuxÄں˼°Ò»Ð©Èí¼þµÄÔ´³ÌÐòʱ£¬¾³£ÒªÓÃÕâ¸öÃüÁî¡£Make ......
µÚ2Ìõ£ºÓöµ½¶à¸ö¹¹ÔìÆ÷²ÎÊýʱҪ¿¼ÂÇÓù¹½¨Æ÷
ij¸öÀàµÄÊôÐԽ϶࣬³õʼ»¯µÄʱºòÓÖÓÐһЩÊDZØÐë³õʼ»¯µÄ£¬¶øÇÒÀàÐÍÓÐÐÎͬ£¬
±ÈÈçnew Contact("ÐÕÃû","ÏÔʾÃû","ÊÖ»úºÅ","·ÉÐźÅ","ËùÔÚµØ",ÄêÁä,ÐÔ±ð);
ǰ5¸öÊôÐÔÊÇString ÀàÐÍ£¬ºó2¸öÊÇintÀàÐÍ£¬ÔÚÌîд¹¹Ôì·½·¨µÄʱºòºÜÈÝÒ×Ìîд´í룬»òÕßÉÙÌîд£¬»òÕߵߵ¹ÁËÊôÐÔ£¬
ÈçÏ ......
·½·¨Ò»£º
ÈôʹÓÃJBuilder7£¬²½ÖèÈçÏ£º 1¡¢Ê×ÏȽ¨Á¢¹¤³Ì£¬Application¡£ÕâЩ¾Í²»ÐèÒªÏêϸ˵Ã÷¡£ 2¡¢Ñ¡Ôñ²Ëµ¥WizardsϵÄarchive Builder 3¡¢ÔÚarchive typeÖÐÑ¡ÔñApplication 4¡¢ÔÚNameÑ¡ÏîÖиø¿ÉÖ´ÐгÌÐòÆðÃû£¬ÆäËûÑ¡ÏîĬÈÏ 5¡¢°üº¬½ø¸Ã¹¤³ÌÖÐËùÓеÄÀàºÍ×ÊÔ´ 6¡¢º¬Àà¿âÖÐËùÓеÄÀàºÍ×ÊÔ´ 7¡¢ÏÂÃæÁ½²½Ä¬ÈÏ 8¡¢ ......