JAVAÒì³£×Ü½á ¼Ì³Ð
ÒÔÏÂÊǶÔJAVAÒì³£µÄ¼Ì³Ð»úÖÆµÄһЩ×ܽᡣ
1. RuntimeExceptionÓëException, Error²»Í¬µã£º µ±·½·¨ÌåÖÐÅ׳ö·ÇRuntimeException£¨¼°Æä×ÓÀࣩʱ£¬·½·¨Ãû±ØÐëÉùÃ÷Å׳öµÄÒì³££»µ«Êǵ±·½·¨ÌåÖÐÅ׳öRuntimeException£¨°üÀ¨RuntimeException×ÓÀࣩʱ£¬·½·¨Ãû²»±ØÉùÃ÷¸Ã¿ÉÄܱ»Å׳öµÄÒì³££¬¼´Ê¹ÉùÃ÷ÁË£¬JAVA³ÌÐòÔÚij¸öµ÷Óõĵط½£¬Ò²²»ÐèÒªtry-catch´Ó¾äÀ´´¦ÀíÒì³£¡£
class TestA{
//compiles fine.we don't need to claim the RuntimeException to be thrown here
void method(){
throw new RuntimeException();
}
}
class TestB{
void method() throws RuntimeException{
throw new RuntimeException();
}
void invokeMethod(){
//compiles fine. we don't need the try-catch clause here
method();
}
}
class TestC{
//compiles error.we need to claim the Exception to be thrown on the method name
void method(){
throw new Exception();
}
}
class TestD{
//compiles fine.
void method() throws Exception{
throw new Exception();
}
}
ÒÔÏÂËùÓеÄÏà¹ØÒì³£µÄÌØÐÔ¶¼²»°üÀ¨RuntimeException¼°Æä×ÓÀà¡£
2. ¼ÙÈçÒ»¸ö·½·¨ÔÚ¸¸ÀàÖÐûÓÐÉùÃ÷Å׳öÒì³££¬ÄÇô£¬×ÓÀา¸Ç¸Ã·½·¨µÄʱºò£¬²»ÄÜÉùÃ÷Òì³£¡£
class TestA{
void method(){}
}
class TestB extends TestA{
//complies error if the method overrided pertaining to the base class doesn't declare throwing exceptions
void method() throws Exception{
throw new Exception();
}
}
3. ¼ÙÈçÒ»¸ö·½·¨ÔÚ¸¸ÀàÖÐÉùÃ÷ÁËÅ׳öÒì³££¬×ÓÀา¸Ç¸Ã·½·¨µÄʱºò£¬ÒªÃ´²»ÉùÃ÷Å׳öÒì³££¬ÒªÃ´ÉùÃ÷±»Å׳öµÄÒì³£¼Ì³Ð×ÔËüËù¸²¸ÇµÄ¸¸ÀàÖеķ½·¨Å׳öµÄÒì³£¡£
class TestA{
void method() throws RuntimeException{}
}
class TestB extends TestA{
//compiles fine if current method does not throw any exceptions
void method(){}
}
class TestC extends TestA{
//compiles fine because NullPointerException is inherited from RuntimeException which is thrown by the overrided method of the base class
void method() throws NullPointerException{}
}
class TestD extends TestA{
//compiles error because Exception thrown by current method is not inherited from RuntimeException which is thr
Ïà¹ØÎĵµ£º
javaÖÐɾ³ýĿ¼ÊÂÏÈҪɾ³ýĿ¼ÏµÄÎļþ»ò×ÓĿ¼¡£Óõݹé¾Í¿ÉÒÔʵÏÖ¡£
public void del(String filepath) throws IOException{
File f = new File(filepath);//¶¨ÒåÎļþ·¾¶
if(f.exists() && f.isDirectory()){//ÅжÏÊÇÎļþ»¹ÊÇĿ¼
if( ......
Èç¹ûÒªÔËÐÐjava³ÌÐò¾Í±ØÐë°²×°JRE£¨Java Runtime Environment)
Èç¹ûÒª¿ª·¢java³ÌÐò¾Í±ØÐë°²×°JDK£¨Java Develope Kit)
£¬×¢ÒâJDKÖаüÀ¨ÁËJRE¡£
°²×°Íê³Éºó£¬ÐèÒªÐÞ¸Äϵͳ»·¾³±äÁ¿PATH·½·¨£¬²ÅÄÜʹϵͳ֪µÀµ½ÄÄÀïÈ¥ÕÒjavacµÈÏà¹Ø±àÒëÐèÒªµÄÃüÁ·½·¨ÈçÏ£º
1¡¢ÓÒ¼üµ¥»÷ÎҵĵçÄÔ£¬Ñ¡‘ÊôÐÔ’²Ëµ¥£¬ÔÚµ¯³öµÄ¶Ô» ......
ZT:http://javahy.javaeye.com/blog/384871
¡¡¡¡JavaÓïÑÔµÄÒ»¸öÓŵã¾ÍÊÇÈ¡ÏûÁËÖ¸ÕëµÄ¸ÅÄµ«Ò²µ¼ÖÂÁËÐí¶à³ÌÐòÔ±ÔÚ±à³ÌÖг£³£ºöÂÔÁ˶ÔÏóÓëÒýÓõÄÇø±ð£¬±¾ÎÄ»áÊÔͼ³ÎÇåÕâÒ»¸ÅÄî¡£²¢ÇÒÓÉÓÚJava²»ÄÜͨ¹ý¼òµ¥µÄ¸³ÖµÀ´½â¾ö¶ÔÏó¸´ÖƵÄÎÊÌ⣬ÔÚ¿ª·¢¹ý³ÌÖУ¬Ò²³£³£ÒªÒªÓ¦ÓÃclone£¨£©·½·¨À´¸´ÖƶÔÏó¡£±¾ÎÄ»áÈÃÄãÁ˽âʲôÊÇÓ°×Óclone ......
¡¡¡¡javaÖÐÓÐÁ½ÖÖ°üµÄµ¼Èë»úÖÆ£¬×ܽáÈçÏ£º
¡¡¡¡µ¥ÀàÐ͵¼Èë(single-type-import)£¬ÀýÈçimport java.io.File;
¡¡¡¡°´ÐèÀàÐ͵¼Èë(type-import-on-demand)£¬ÀýÈç import java.io.*;
¡¡¡¡¹ØÓÚÕâÁ½ÖÖµ¼ÈëÀàÐÍ´ó¼Ò¸÷ÓÐËù°®£¬ÖÚ˵·×ç¡¡£ÕâÀï·ÖÎöÒ»ÏÂÕâÁ½ÖÖµ¼ÈëÀàÐ͵ĴóÖ¹¤×÷ÔÀí¹©´ó¼Ò²Î¿¼¡£
¡¡¡¡µ¥ÀàÐ͵¼Èë±È½ÏºÃÀí½â£¬½ö½öµ ......
package info.gnuhpc;
/**
* @author gnuhpc email: warmbupt@gmail.com blog: http://gnuhpc.info
* @date 2010-1-22
* @bugs ²»Ö§³Ö¶àÒô×Ö´¦Àí
*/
public class PinyinConv {
// ¼òÌåÖÐÎĵıàÂ뷶Χ´ÓB0A1£¨45217£©Ò»Ö±µ½F7FE£¨63486£©
private static int BEGIN = 45217;
private static int ......