??xml version="1.0" encoding="utf-8" standalone="yes"?>日韩大陆av,久久男人天堂,91精品国产综合久久国产大片http://www.aygfsteel.com/murainwood/category/9938.htmlzh-cnThu, 07 Jun 2007 01:51:49 GMTThu, 07 Jun 2007 01:51:49 GMT60Java的速度Q实在不惌调重弹http://www.aygfsteel.com/murainwood/archive/2007/06/06/122463.htmlmurainwoodmurainwoodWed, 06 Jun 2007 14:39:00 GMThttp://www.aygfsteel.com/murainwood/archive/2007/06/06/122463.htmlhttp://www.aygfsteel.com/murainwood/comments/122463.htmlhttp://www.aygfsteel.com/murainwood/archive/2007/06/06/122463.html#Feedback0http://www.aygfsteel.com/murainwood/comments/commentRss/122463.htmlhttp://www.aygfsteel.com/murainwood/services/trackbacks/122463.html    曄数次导演~程语言PK的CSDNQ今天又发表?jin)篇很娱乐很有导火?ch)的文?br>



murainwood 2007-06-06 22:39 发表评论
]]>一道算法题http://www.aygfsteel.com/murainwood/archive/2006/10/12/74685.htmlmurainwoodmurainwoodWed, 11 Oct 2006 16:43:00 GMThttp://www.aygfsteel.com/murainwood/archive/2006/10/12/74685.htmlhttp://www.aygfsteel.com/murainwood/comments/74685.htmlhttp://www.aygfsteel.com/murainwood/archive/2006/10/12/74685.html#Feedback0http://www.aygfsteel.com/murainwood/comments/commentRss/74685.htmlhttp://www.aygfsteel.com/murainwood/services/trackbacks/74685.html?个英文字?a,b,c ,d,e,f
 (tng)从中L取N?N<=6)来排?
已知 a 只能?b 相连, (tng)
 (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) b不能和e,f相连
 (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng)c不能和a相连
 (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) d不能?a ,e相连
 (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng)f 不能和?tng)a,b相连
h印出字母f或b 在末l合序,用Java实现

我的解答:

 (tng) (tng) (tng) import java.util.*;

/**
 (tng)*
 (tng)* @author ShenXiaoliang
 (tng)*
 (tng)*/
public class DemoGraph {
 (tng)
 (tng)final static int VERTICE=6;
 (tng)
 (tng)private ArrayList<String> patheSet=new ArrayList<String>();
 (tng)
 (tng)private String[] ver={"a","b","c","d","e","f"};
 (tng)
 (tng)private int[][] graph=new int[6][6];
 (tng)
 (tng)private String path="";
 (tng)
 (tng)private boolean[] isVisit=new boolean[VERTICE];
 (tng)
 (tng)
 (tng)public DemoGraph() {
 (tng) (tng)
 (tng) (tng)initiGraph();
 (tng) (tng)for(int index=0;index<VERTICE;index++)
 (tng) (tng)depthSearch(index);
 (tng) (tng)show();
 (tng) (tng)
 (tng)}
 (tng)
 (tng)private void initiGraph(){
 (tng) (tng)graph[0][1]=1;
 (tng) (tng)graph[1][0]=1;
 (tng) (tng)graph[1][2]=1;
 (tng) (tng)graph[1][3]=1;
 (tng) (tng)graph[2][1]=1;
 (tng) (tng)graph[2][3]=1;
 (tng) (tng)graph[2][4]=1;
 (tng) (tng)graph[2][5]=1;
 (tng) (tng)graph[3][1]=1;
 (tng) (tng)graph[3][2]=1;
 (tng) (tng)graph[3][5]=1;
 (tng) (tng)graph[4][2]=1;
 (tng) (tng)graph[4][5]=1;
 (tng) (tng)graph[5][2]=1;
 (tng) (tng)graph[5][3]=1;
 (tng) (tng)graph[5][4]=1;
 (tng)}
 (tng)
 (tng)private void depthSearch(int start){
 (tng) (tng)
 (tng) (tng)isVisit[start]=true;
 (tng) (tng)path+=ver[start];
 (tng) (tng)if(path.charAt(path.length()-1)=='f'||path.charAt(path.length()-1)=='b') patheSet.add(path);
 (tng) (tng)for(int index=0;index<VERTICE;index++)
 (tng) (tng) (tng)if(graph[start][index]==1&&isVisit[index]==false)
 (tng) (tng) (tng) (tng)depthSearch(index);
 (tng) (tng) (tng)else continue;
 (tng) (tng)path=path.substring(0,path.length()-1);
 (tng) (tng)isVisit[start]=false;
 (tng)}
 (tng)
 (tng)
 (tng)private void show(){
 (tng) (tng)for(String pa:patheSet)
 (tng) (tng) (tng)System.out.println(pa);
 (tng)}

 (tng)/**
 (tng) * @param args
 (tng) */
 (tng)public static void main(String[] args) {
 (tng) (tng)// TODO Auto-generated method stub
 (tng) (tng)new DemoGraph();
 (tng)}

}

 (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng)



murainwood 2006-10-12 00:43 发表评论
]]>
l箋(hu)巩固Java基础Q一道综合题http://www.aygfsteel.com/murainwood/archive/2006/08/14/63382.htmlmurainwoodmurainwoodSun, 13 Aug 2006 19:18:00 GMThttp://www.aygfsteel.com/murainwood/archive/2006/08/14/63382.htmlhttp://www.aygfsteel.com/murainwood/comments/63382.htmlhttp://www.aygfsteel.com/murainwood/archive/2006/08/14/63382.html#Feedback4http://www.aygfsteel.com/murainwood/comments/commentRss/63382.htmlhttp://www.aygfsteel.com/murainwood/services/trackbacks/63382.html自己想的一道题Q算?0Q原创吧 (tng)
String a=new String("Hello");
 (tng) a+="World";

 (tng)问:(x)a的内Ҏ(gu)后是什么?
 (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) q两个语句,q成了(jin)几个Java对象Q?br />
单不Q看样子非常单吧Q呵c(din)?br />W一问:(x)aQ确切地说a引用的内容)(j)是HelloWorld
 (tng)
W二问:(x) 两个语句Q一q成了(jin)几个对象Q?br /> (tng) (tng) (tng) (tng)看第一个语句,说实话,用这U方式初始化StringQ实在是代码垃圾。这先不啦。这个语句是老生长谈Q一个或两个对象?br /> (tng) (tng) (tng) ZQ第一ơ执行时创徏?jin)二? 一个ؓ(f)字面?Hello"(它本w是一个String对象), 一个ؓ(f)new String("Hello")(它是通过new创徏? 功能上和字面?foo"完全一? 但却是另一个对?.

W二ơ执行时, 只创Z? 即new String("Hello"), q是因ؓ(f): "Hello"作ؓ(f)String字面? 是存在于String Pool里面? W二ơ用它? 直接指向原有的String, 而不再创建新的String; 但new String("Hello")却每执行一ơ都创徏一个新?完全一L(fng)String对象.

 (tng) (tng) (tng)W二个语句呢Q?br /> (tng) (tng) (tng) (tng) 3个对象?br /> (tng) (tng) (tng) (tng) 首先是“World”,毋庸质疑?br /> (tng) (tng) (tng) (tng) 那么然后呢?注意?jin),String是finalc,不可改变。^时我们写Java?x)有个错觉,stringA+stringB׃为是前者尾巴接上后者脑袋。的,在C/C++里就是如此。一点儿错都没有?br /> (tng) (tng) (tng) 但是Java不是QJava设计者ؓ(f)?jin)更多方面的考虑Q他们把String设计成了(jin)final?br /> (tng) (tng) (tng) 看一下JVM汇编指o(h)?br /> (tng) 0: (tng)aload_0
 (tng) (tng) 1: (tng)invokespecial (tng)#1; //Method java/lang/Object."<init>":()V
 (tng) (tng) 4: (tng)return

static void inti();
 (tng) Code:
 (tng) (tng) 0: (tng)new (tng)#2; //class java/lang/String
 (tng) (tng) 3: (tng)dup
 (tng) (tng) 4: (tng)ldc (tng)#3; //String Hello
 (tng) (tng) 6: (tng)invokespecial (tng)#4; //Method java/lang/String."<init>":(Ljava/lang/String;)V
 (tng) (tng) 9: (tng)astore_0
 (tng) (tng) 10: (tng)new (tng)#5; //class java/lang/StringBuilder
 (tng) (tng) 13: (tng)dup
 (tng) (tng) 14: (tng)invokespecial (tng)#6; //Method java/lang/StringBuilder."<init>":()V
 (tng) (tng) 17: (tng)aload_0
 (tng) (tng) 18: (tng)invokevirtual (tng)#7; //Method java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
 (tng) (tng) 21: (tng)ldc (tng)#3; //String Hello
 (tng) (tng) 23: (tng)invokevirtual (tng)#7; //Method java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
 (tng) (tng) 26: (tng)invokevirtual (tng)#8; //Method java/lang/StringBuilder.toString:()Ljava/lang/String;
 (tng) (tng) 29: (tng)astore_0
 (tng) (tng) 30: (tng)return

}

仔细看一下我做的标记QJVMl我们生成了(jin)一个StringBuildercR(我用的是JDK5Q旧版本是StringBufferc,单单q一点小改动p让Java的速度提高很多Q。让后用appendҎ(gu)载入Hello和W(xu)orld两个String的引用(明确地说转化成字W数l)(j)?br />当蝲入完成后QStringBuilder实例调用toStringQ生成一个新的String实例Q暂时称为TempString)?br /> (tng)最后把引用a指向TempString


ȝQ两句语句d生成?个或5个Javacd?br />
PSQJava中没有指针实在是太不方便?jin)。特别是在操作原始数据类型的时候。个为Java应该在这点上学学CQ。指针不是洪水猛兽,对优UE序员而言Q指针是~程中的一Un受?br /> (tng) (tng) (tng) (tng) (tng) (tng) (tng) 希望“v豚”(Java7Q能出现指针吧-Q-很不现实Q还是等开源后的Java版本?br />



murainwood 2006-08-14 03:18 发表评论
]]>
Stack and Heaphttp://www.aygfsteel.com/murainwood/archive/2006/07/31/61037.htmlmurainwoodmurainwoodMon, 31 Jul 2006 08:28:00 GMThttp://www.aygfsteel.com/murainwood/archive/2006/07/31/61037.htmlhttp://www.aygfsteel.com/murainwood/comments/61037.htmlhttp://www.aygfsteel.com/murainwood/archive/2006/07/31/61037.html#Feedback2http://www.aygfsteel.com/murainwood/comments/commentRss/61037.htmlhttp://www.aygfsteel.com/murainwood/services/trackbacks/61037.htmlStack 和Heap的差别,上次华ؓ(f)研究生笔试题p过。C语言的我很清?
 (tng)Stack: automatic variables within functions
 (tng) Heap: global variables (storage class external), and static variables

而言之,最大的不同是:(x)前者是函数变量的空_(d)后者是E序变量的空?br />
另外QStack上分配内存是安全的。而Heap上分配内存则没那么爽?jin)。调用malloc分配内存Q是在Heap上开辟空间。一定要注意释放。否则老是memory leak
 (tng)
昨天有h问我JVM中的Stack和Heap的差别,当时?j)不在焉地照搬C语言敯?jin)事?br />中午起床Q没事闲着看帖子。无意中惌vq个问题Q在Google搜烦(ch)?jin)一番。发现昨天的回答Z(jin)问题Q?br />“?tng)I(yng)t is useful to know that these two different kinds of memory exist in Java. Stack memory is the program's memory, and heap memory resides outside of the program.?br />
Stack是程序内存,Heap内存存在于程序之外。这样子看v来和C语言中地Heap有些像诶QC语言中的Heap也是在mian()之外的)(j)。再仔细看看

Stack memory stores primitive types and the addresses of objects. The object values are stored in heap memory.

cd例存在于Heap。类实例的的指针在Stack中存放。难怪JVM没有text segment Q?/font>在Stack囊括了(jin)text segment?br />
q样做的好处Q就是ؓ(f)?jin)实现Java的垃圑֛收机制。Q何的cd象实例都在Heap中,在Stack中有它们的引用。当所以的U程都不在需要某个引用时QJVM的那个资源回收线E就?x)把该实例从Heap当中清楚掉?br />
文章告诉我,回收U程要做全局的检来定某个实例是否已经“无用”了(jin)。这样子Q我们可以在代码上做些工作,来给回收U程加速?br />Test t = new Test();
 (tng)t.someAction();
 (tng)// all done
 (tng)t = null;
实例t不再有用Ӟ把他置为null,告诉JVMQ你不用在Stack和Heap之间自己校验啦,我已l做好了(jin)标记Q放?j)回收吧?br />
结QStack: Primitive data types(primitive types), the addresses of objects(=references).
 (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) Heap: (tng) objects.
前者:(x)基本cd和实例地址Q引用)(j)Q后者:(x)cd?/font>



murainwood 2006-07-31 16:28 发表评论
]]>
可爱的SWTQ无奈的SwingQ讨厌的MFCQ?/title><link>http://www.aygfsteel.com/murainwood/archive/2006/07/31/60925.html</link><dc:creator>murainwood</dc:creator><author>murainwood</author><pubDate>Sun, 30 Jul 2006 22:12:00 GMT</pubDate><guid>http://www.aygfsteel.com/murainwood/archive/2006/07/31/60925.html</guid><wfw:comment>http://www.aygfsteel.com/murainwood/comments/60925.html</wfw:comment><comments>http://www.aygfsteel.com/murainwood/archive/2006/07/31/60925.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.aygfsteel.com/murainwood/comments/commentRss/60925.html</wfw:commentRss><trackback:ping>http://www.aygfsteel.com/murainwood/services/trackbacks/60925.html</trackback:ping><description><![CDATA[ (tng) 发发牢骚(d)Q自从课讑ց?jin)SWT /JFace的客L(fng)应用软gQ感觉超好。优的代码Q清晰的l构Q典雅的布局Q简z的事g机制QSWT太迷人啦。不愧ؓ(f)IBM的杰作,Java桌面开发的新贵。可惜就是没人用。不是多了(jin)和^台相关的dll文g和几个Jar资源包嘛Q批处理写得熟溜得h才不嫌麻?ch)呢Q咯咯?br /><br /> (tng) (tng) Swing嘛,怎么说你好呢Q你得结构是很清晎ͼ论MVC的分L,实我觉得比SWT做得优秀些。可是你冗长的代码,ȝ(ch)的事件相应机Ӟ有些让h不习(fn)惯的布局Q特别是奇怪的界面....不是偶说你,偶不想理你啦?br /> (tng) <br /> (tng) (tng) Java的GUIE序本来Q我本来׃打算q。精通一个SWTQ了(jin)解一个Swing够?br /><br /> (tng) 扯上个无关的QMFCQ我了(jin)解你p讨厌你,明白你p恶心(j)你。还好,当初没有误入歧途,把你当成宝贝Q反正我估计基本不做桌面软gQ^_^Q?img src ="http://www.aygfsteel.com/murainwood/aggbug/60925.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.aygfsteel.com/murainwood/" target="_blank">murainwood</a> 2006-07-31 06:12 <a href="http://www.aygfsteel.com/murainwood/archive/2006/07/31/60925.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>评设计W记http://www.aygfsteel.com/murainwood/archive/2006/07/24/59804.htmlmurainwoodmurainwoodMon, 24 Jul 2006 06:44:00 GMThttp://www.aygfsteel.com/murainwood/archive/2006/07/24/59804.htmlhttp://www.aygfsteel.com/murainwood/comments/59804.htmlhttp://www.aygfsteel.com/murainwood/archive/2006/07/24/59804.html#Feedback0http://www.aygfsteel.com/murainwood/comments/commentRss/59804.htmlhttp://www.aygfsteel.com/murainwood/services/trackbacks/59804.html (tng) (tng) (tng) 目W二阶段Q管理客L(fng)和管理服务器。架构C/S,技术RMI
 (tng) (tng) (tng) 今天上午做了(jin)一个简单的试pȝQ用来测试前两天所~写的构Ӟ(x)写了(jin)一q程服务器,一个命令行客户端。OKQ编译时也没出错?br /> (tng) (tng) (tng) 然而运行v来,可怕的事情发生?jin)?x)先前写的实体cL法传送给客户端。程序抛Z(jin)异常。仔l观察,发现是生了(jin)对象无法序列化的IO异常?br /> (tng) (tng) (tng) RMI底层通过TCP协议q行通讯QObjectInputStream和ObjectOutputStream来负责对象的输入和输出。实在是不明白,以前做RMIpȝ实验的时候,Ҏ(gu)没遇到这U序列化异常Q传String׃StringQ传Vector׃Vector?br /> (tng) (tng) 猜想应该是我写的那些cL法序列化的缘故。参考了(jin)API文档Q发现这个东西:(x)MarshalledObjectQ可以对其构造方法的对象q行序列化(说穿?jin)就是变成字节流Q?br /> (tng) q速改造了(jin)试E序QOKQ能I对象了(jin)。但?....序列化以后无法反序列化!天,cd象实例全部变成了(jin)l毫无意义的字节数组?br /> (tng) 应该有其他的办法QSUN的Java文档实在不能和MSDN相比Q太q于单啦?br /> (tng) l过3个小时的资料查阅和测试,l于扑ֈ?jin)种正确而且异常单的Ҏ(gu)Q对先前的代码进行简单的重构Q让他们l统实现java.io.Serializable接口。只改一行代码,全部解决Q?br /> (tng) ^_^



murainwood 2006-07-24 14:44 发表评论
]]>
[转]classpath详解http://www.aygfsteel.com/murainwood/archive/2006/07/20/59286.htmlmurainwoodmurainwoodThu, 20 Jul 2006 12:29:00 GMThttp://www.aygfsteel.com/murainwood/archive/2006/07/20/59286.htmlhttp://www.aygfsteel.com/murainwood/comments/59286.htmlhttp://www.aygfsteel.com/murainwood/archive/2006/07/20/59286.html#Feedback0http://www.aygfsteel.com/murainwood/comments/commentRss/59286.htmlhttp://www.aygfsteel.com/murainwood/services/trackbacks/59286.html讄c\?br />l构
可通过?JDK 工具使用 -classpath 选项Q首选方法)(j)或设|?CLASSPATH 环境变量来设|类路径?
 (tng) (tng) (tng) C:> jdkTool -classpath path1;path2...
 (tng) (tng) (tng) C:> set CLASSPATH=path1;path2...
每个 path 以文件名或目录结,该文件名或目录取决于类路径讄成什么:(x)
对于包含 .class 文g?.zip ?.jar 文gQ\径以 .zip ?.jar 文g名结?
对于未命名包中的 .class 文gQ\径以包含 .class 文g的目录结?
对于已命名包中的 .class 文gQ\径以包含“root”包Q完整包名中的第一个包Q的目录l尾?
用分h分隔多个目。?set 命o(h)Ӟ需要省略等号两边的I格Q?Q。其?jdkTool 可以?java、javac、javadocQ等{。有兌l列表,参见 JDK 开发工兗?br />说明
c\径告?Java 应用E序d里查扄三方和自定义c?-- 即不?Java 扩展?Java q_一部分的类。在 JDK 1.2 中,JVM 和其?JDK 工具通过依次搜烦(ch)q_库、库扩展和类路径来查扄Q有x(chng)索策略的详细信息Q参见如何查扄Q?
多数应用E序的类库都?x)充分利用扩展机制。因此,只有惌加蝲某个cd (a) 未位于当前目录或其分枝包??(b) 未位于扩展机制所指定的位|时Q才需讄c\径?

如果用户是从旧版?JDK 升而来Q则启动讄可能包括不再需要的 CLASSPATH 讄。这时应该删除Q何非应用E序特定的设|。有些?Java 虚拟机的W三方应用程序可能修?CLASSPATH 环境变量以包括它们用的cd。这U设|可以保留?

可通过在调?JVM 或其?JDK 工具时?Java 工具?-classpath 选项改变c\径(例如Q?java -classpath ...Q。这是改变类路径的首选方法。还可通过使用 CLASSPATH 环境变量改变c\径?

注意QJDK 1.2 ~省c\径是当前目录。设|?CLASSPATH 变量或?-classpath 命o(h)行开兛_覆盖~省|因而如果想要在搜烦(ch)路径中包括当前目录,则必d新设|中包括?”?br />cd以存储在目录Q文件夹Q或归档文gQ例?classes.zip ?classes.jarQ中。有兛_档文件的详细信息和类路径的工作原理,参见本文档最后的理解c\径和包名?
 (tng)
重要说明QJDK 旧版本在~省c\径中q包?<jdk-dir>/classes V该目录仅供 JDK 使用Q且不用于应用程序类。应用程序类应该攄?JDK 外部的目录。这P安装?JDK 时不必需要重新安装应用程序库。ؓ(f)?jin)与旧版本的兼容性,使用 <jdk-dir>/classes 目录作ؓ(f)cd的应用程序在当前版本中仍能运行,但不能保证在以后的版本中它们q能q行?
使用 Java 工具?-classpath 选项
Java 工具 java、jdb、javac ?javah h -classpath 选项Q在工具q行时它?yu)取代缺省类路径或?CLASSPATH 环境变量所指定的类路径。这是改变类路径讄的推荐方法,因ؓ(f)q样每个应用E序可具有它所需的类路径而又不会(x)q扰其他应用E序?
q行时工?java ?jdb q具?-cp 选项。该选项?-classpath 的羃写?

对于非常Ҏ(gu)的情况,java ?javac 都具有开养I使得可改变它们用的路径以查扑֮们自qcd。但是,l大多数用户从来都不?x)用到这些开兟?/p>

使用 CLASSPATH 环境变量
如前一节中所qͼ一般用户将惌使用 -classpath 命o(h)行选项。本节将介绍如何讄 CLASSPATH 环境变量或清除以前安装遗留下的设|?
讄 CLASSPATH
?DOS 提示W下Q可?set 命o(h)修改 CLASSPATH 环境变量。其格式为:(x)
 (tng) (tng) set CLASSPATH=path1;path2 ...
路径应该以指定驱动器的字母开_(d)例如 C:\...。这P在偶然切换到不同驱动器时仍可扑ֈc(例如Q如果\径项?\... 开_(d)q且当前位于驱动?D: 上,则所需的类在 D: 而不?C: 驱动器上找)(j)?
清除 CLASSPATH
如果 CLASSPATH 环境变量被设|成不正的|或启动文件或脚本E序讄?jin)不正确路径Q则可通过使用下列命o(h)清除 CLASSPATHQ?
 (tng) C:> set CLASSPATH=
该命令仅清除当前?x)话?CLASSPATH。要保在以后的?x)话中具有正?CLASSPATH 讄Q则应该删除或修改启动设|?
更改启动讄
如果在系l启动时讄 CLASSPATH 变量Q则查找它的位置取决于所使用的操作系l:(x)
 (tng) 操作pȝ Ҏ(gu)
Windows 98 ?
Windows 95 (g)?autoexec.bat 文g中的 set 命o(h)?
Windows NT 启动“控刉李(k),选择“系l”,单击“环境”选项卡,q在“用户变量”部分中Q检?CLASSPATH 变量?

理解c\径和包名
Java c被l织成包Q而这些包被映到文gpȝ中的目录。但是与文gpȝ不同的是Q无Z时指定包名,都应指定完整包名 -- 永远不要仅指定它的一部分。例如,java.awt.Button 的包名L应指定ؓ(f) java.awt?
例如Q假定想?Java q行环境在包 utility.myapp 中查扑֐?Cool.class 的类。如果该目录的\径ؓ(f) C:\java\MyClasses\utility\myappQ则应该类路径讄成包?C:\java\MyClasses?

要运行该应用E序Q可使用下述 JVM 命o(h)Q?

C:> (tng) java -classpath C:\java\MyClasses utility.myapp.Cool
当该应用E序q行ӞJVM 使用c\径设|查扑֜ utility.myapp 包中定义的Q何其他类?
注意Q应在命令中指定完整包名。例如,讄c\径包?C:\java\MyClasses\utility q用命?java myapp.Cool 是不可能的,因ؓ(f)q找不到该类?

Q?zhn)可能想知道用什么定义类的包名。答案是Q包名是cȝ一部分Qƈ且不能修改,除非重新~译该类。)(j)

注意Q包规范机制一个有的l果是,属于相同包的多个文g实际上可存在于不同的目录中。对于每个类Q包名都是相同的Q但是每个文件的路径可从c\径中的不同目录开始?br />文g夹和归档文g
当类存储在目录(文g夹)(j)中时Q例?c:\java\MyClasses\utility\myappQ则c\径项指向包含包名W一个元素的目录Q在q里?C:\java\MyClassesQ因为包名是 utility.myappQ?
但是当类存储在归档文Ӟ.zip ?.jar 文gQ中Ӟc\径项则是?.zip ?.jar 文g的\径。例如,要用位?.jar 文g中的cdQ则命o(h)应该cM下述形式Q?

 (tng) (tng) java -classpath C:\java\MyClasses\myclasses.jar utility.myapp.Cool
多重指定
要在目录 C:\java\MyClasses ?C:\java\OtherClasses 中查扄文gQ则可将c\径设|ؓ(f)Q?
 (tng) (tng) java -classpath C:\java\MyClasses;C:\java\OtherClasses ...
注意两个路径之间用分号分隔?
指定ơ序
指定多个c\径项的次序是相当重要的。Java 解释器将按照目录在类路径变量中的ơ序在各个目录中查找cR在上例中,Java 解释器首先在目录 C:\java\MyClasses 中查N要的cR只有当它在该目录中没有扑ֈ该类Ӟ解释器才能到 C:\java\OtherClasses 目录中查?/p>

murainwood 2006-07-20 20:29 发表评论
]]>
有感于论坛上关于JQ的讨论http://www.aygfsteel.com/murainwood/archive/2006/05/30/48868.htmlmurainwoodmurainwoodMon, 29 May 2006 23:43:00 GMThttp://www.aygfsteel.com/murainwood/archive/2006/05/30/48868.htmlhttp://www.aygfsteel.com/murainwood/comments/48868.htmlhttp://www.aygfsteel.com/murainwood/archive/2006/05/30/48868.html#Feedback1http://www.aygfsteel.com/murainwood/comments/commentRss/48868.htmlhttp://www.aygfsteel.com/murainwood/services/trackbacks/48868.html (tng) (tng) 前些天逛论坛,偶见一h在讨论JQ的前途问题,很多那东襎(k)根本不如CQ”,“甚臌?sh)如VB。NET”。我的想法是Q他们根本不?jin)?NET?br /> (tng) (tng) JQ的目的是ؓ(f)?jin)JavaE序员能q移?NETq_而开发的。换而言之,JQ是JavaE序员准备的Q而不是初学者。诚?dng)我认为CQ拥有更优雅的语法,但是对于.NETq个q_本n而言Q无论用什么语aQ当然是?NET上的E序语言Q,它们最l都是CLR。VB。NETQCQ,JQ,Delphi.NET.....各种语言的优劣在已经变得很不重要?jin)-Q你熟?zhn)那种Q那U就是最好的Q因为它们本质上几乎没差别的Q极端说法是,.NET 语言仅仅是”外观“不同Ş?jin)?br /> (tng) (tng) (tng) pҎ(gu)_(d).NET要比Java更有灉|性,虽然我是Java的忠实跟随者?br /> (tng) (tng) (tng) 不过我们也看C(jin)关于Java的一些有的新闻Q去q出C(jin)一UJPythonQ用Java译的运行于JVM上的“Python”。呵呵,不妨大胆地猜,未来?x)出现更多?JC++","JPascal",:JBasic"Q甚x(chng)“JCQ”,那么那时QJava?x)更像一个^収ͼ语言的灵zL将更高Q?img src ="http://www.aygfsteel.com/murainwood/aggbug/48868.html" width = "1" height = "1" />

murainwood 2006-05-30 07:43 发表评论
]]>
վ֩ģ壺 ̨| ѽ| | | α| | | ͤ| | ۳| Ӻ| | | | ɽ| | | | | ɽ| | ͷ| | ۩| Ϳ| ʱ| ӳ| | ƽ| ·| կ| | | | μԴ| ȫ| | Դ| ֣| | ʼ|