|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
轮性能微软曾做过一个例子,就是同一个项目用java和.net网页编程来作,结果开发周期,.net网页编程是java的一半,性能java是.net网页编程的十分之一,代码量java是.net网页编程的三倍。呵呵,这说明了什么,.net网页编程的全方位比java好。但是有的人说.net网页编程不能跨平台,这个问题我和我同学曾讨论过,都认为微软的.net网页编程很可能早都可以跨平台了,但是微软为了保护他们的操作系统,所以才没有推出跨平台的.net网页编程,只是推出了跨语言的.net网页编程,
我们如今能够入手下手演示Enumeration(列举)的真正能力:将穿越一个序列的操纵与谁人序列的基本布局分开开。鄙人面的例子里,PrintData类用一个Enumeration在一个序列中挪动,并为每一个对象都挪用toString()办法。此时创立了两个分歧范例的汇合:一个Vector和一个Hashtable。而且在它们内里分离添补Mouse和Hamster对象(本章早些时分已界说了这些类;注重必需先编译HamsterMaze.java和WorksAnyway.java,不然上面的程序不克不及编译)。因为Enumeration埋没了下层汇合的布局,以是PrintData不晓得大概不体贴Enumeration来自于甚么范例的汇合:- //:Enumerators2.java
- //RevisitingEnumerations
- importjava.util.*;
- classPrintData{
- staticvoidprint(Enumeratione){
- while(e.hasMoreElements())
- System.out.println(
- e.nextElement().toString());
- }
- }
- classEnumerators2{
- publicstaticvoidmain(String[]args){
- Vectorv=newVector();
- for(inti=0;i<5;i++)
- v.addElement(newMouse(i));
- Hashtableh=newHashtable();
- for(inti=0;i<5;i++)
- h.put(newInteger(i),newHamster(i));
- System.out.println("Vector");
- PrintData.print(v.elements());
- System.out.println("Hashtable");
- PrintData.print(h.elements());
- }
- }///:~
复制代码
注重PrintData.print()使用了这些汇合中的对象属于Object类这一现实,以是它挪用了toString()。但在办理本人的实践成绩时,常常都要包管本人的Enumeration穿越某种特定范例的汇合。比方,大概请求汇合中的一切元素都是一个Shape(多少外形),并含有draw()办法。若呈现这类情形,必需从Enumeration.nextElement()前往的Object举行下溯外型,以便发生一个Shape。
在ruby里才是一切皆对象。当然我不并不是很了解ruby,但是ruby确实是将语法简化得很好。 |
|