资源描述
单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,*,*,第九章,基于文本的,Java,应用程序,本章内容,Java,命令行参数和系统属性,标准,I/O,,,文件,I/O,常用系统类,Collection,接口系列,Deprecation,类、属性和方法,2,命令行参数,在启动,Java,应用程序时可以一次性地向应用程序中传递,0,多个参数,-,命令行参数,命令行参数使用格式:,java,ClassName,lisa,bily,Mr,Brown,命令行参数被系统以,String,数组的方式传递给应用程序中的,main,方法,由参数,args,接收,public static void main(String,args,),3,命令行参数用法举例,1 public class Test9_1,2 public static void main(String,args,),3 for(,int,i=0;i,Collection,+add(element:Object):,boolean,+remove(element:Object):,boolean,+size():,boolean,+,isEmpty,():,boolean,+contains(element:Object):,boolean,+,iterator,():,Iterator,Set,HashSet,List,ArrayList,Vector,22,Set,接口用法举例,import java.util.*;,public class Test9_6,public static void main(String,args,),HashSet,h=new,HashSet,();,h.add(1st);,h.add(2nd);,h.add(new Integer(3);,h.add(new Double(4.0);,h.add(2nd);,/,重复元素,未被加入,h.add(new Integer(3);,/,重复元素,未被加入,m1(h);,public static void m1(Set s),System.out.println(s,);,/,本应用程序输出结果如下,:1st,3,2nd,4.0,23,List,接口用法举例,import java.util.*;,public class Test9_7,public static void main(String,args,),ArrayList,h=new,ArrayList,();,h.add(1st);,h.add(2nd);,h.add(new Integer(3);,h.add(new Double(4.0);,h.add(2nd);,/,重复元素,加入,h.add(new Integer(3);,/,重复元素,加入,m1(h);,public static void m1(List s),System.out.println(s,);,/,本应用程序输出结果如下,:1st,2nd,3,4.0,2nd,3,24,Iterator,接口,Iterator,接口定义了对,Collection,类型对象中所含元素的遍历等增强处理功能,可以通过,Collection,接口中定义的,iterator,(),方法获得一个对应的,Iterator,(,实现类,),对象,Set,(,实现类,),对象,对应的,Iterator,仍然是无序的,List,(,实现类,),对象,对应的,ListIterator,对象可以实现对所含元素的双向遍历,:,使用,next(),方法和,previous(),方法,25,Iterator,接口用法举例,import java.util.*;,public class Test9_8,public static void main(String,args,),ArrayList,h=new,ArrayList,();,h.add(1st);,h.add(2nd);,h.add(new Integer(3);,h.add(new Double(4.0);,Iterator,it=,h.iterator,();,while(,it.hasNext,(),System.out.println(it.next,();,26,Iterator,接口层次,Iterator,+,hasNext,():,boolean,+next():,boolean,+remove(),ListIterator,+,hasPrevious,():,boolean,+previous():Object,+add(element:Object),+set(element :Object),27,Deprecation,Deprecation,关键字可用于标记类、属性和方法,表明这些类,属性或方法已过时、不再提倡使用,.,Deprecation,成分均存在相应的替代类、属性或方法,这些替代者可能采用了更标准化的命名惯例、或功能更适用,.,在移植,Java,代码时,可使用,deprecation,选项获得有关的详细信息,.,javac,-deprecation,MyFile.java,28,Deprecation,举例,(1),public class,HelloWorld,public static void main(String,args,),String f;,f=,System.getenv(java.class.path,);,System.out.println(f,);,编译,:,javac,HelloWorld.java,输出结果,:,HelloWorld.java,uses or overrides a deprecated API.Recompile with-deprecation for details.,1 warning,Process completed.,29,Deprecation,举例,(2),public class,HelloWorld,public static void main(String,args,),String f;,f=,System.getenv(java.class.path,);,System.out.println(f,);,再次编译,:,javac,deprecation,HelloWorld.java,输出结果,:,HelloWorld.java:4:Note:The method java.lang.String,getenv(java.lang.String,)in class java.lang.System has been deprecated.,f=,System.getenv(java.class.path,);,HelloWorld.java,uses or overrides a deprecated API.Please consult the documentation for a better alternative.,1 warning,Process completed.,30,Deprecation,举例,(3),public class,HelloWorld,public static void main(String,args,),String f;,f=,System.getProperty(java.class.path,);,System.out.println(f,);,修改后编译通过,运行输出结果,:,D:lgzex;C:jdk1.3jrelibrt.jar;C:jdk1.3jrelibi18n.jar;C:jdk1.3libdt.jar;C:jdk1.3libtools.jar,31,Ex3,编写程序,练习,Math,String,StringBuffer,类中有关方法的使用;,可参考,jdk1.3docs,文档,运行,M9-23,24,页的例子,体会,Set,与,List,接口的区别;,理解,M9-29,31,页程序,查看,jdk1.3docs,文档理清各种数据类型的性能及用法;体会“,Deprecation”,方法及其处理方式。,(,选做,),32,
展开阅读全文