欢迎来到天天文库
浏览记录
ID:48737596
大小:205.00 KB
页数:27页
时间:2020-01-21
《JAVA程序员培训定制课程c07.ppt》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、第七章高级类特性本章内容Java类的static成员final关键字抽象类接口内部类2static类属性类属性由该类的所有实例共享publicclassPerson{privateintid;publicstaticinttotal=0;publicPerson(){total++;id=total;}}Person+total:int=0-id:intp1:Personid=1p2:Personid=2<><>3类属性应用举例classPerson{priv
2、ateintid;publicstaticinttotal=0;publicPerson(){total++;id=total;}}publicclassOtherClass{publicstaticvoidmain(Stringargs[]){Person.total=100;System.out.println(Person.total);Personc=newPerson();System.out.println(Person.total);}}4类方法应用举例classPerson{privatei
3、ntid;privatestaticinttotal=0;publicstaticintgetTotalPerson(){returntotal;}publicPerson(){total++;id=total;}}publicclassTestPerson{publicstaticvoidmain(String[]args){System.out.println("Numberoftotalis"+Person.getTotalPerson());Personp1=newPerson();System.o
4、ut.println("Numberoftotalis"+Person.getTotalPerson());}}Theoutputis:Numberoftotalis0Numberoftotalis15静态初始化在类的定义体中、方法的外部可包含static语句块static语句块仅在其所属的类被载入时执行一次static块通常用于初始化static(类)属性classPerson{publicstaticinttotal;static{total=100;//为total赋初值}……//其它属性或方法声明}
5、6静态初始化举例classPerson{publicstaticinttotal;static{total=100;System.out.println("instaticblock!");}}publicclassTest{publicstaticvoidmain(String[]args){System.out.println("total="+Person.total);System.out.println("total="+Person.total);}}7关键字static在Java类中声明变量、
6、方法和内部类时,可使用关键字static做为修饰符。static标记的变量或方法由整个类(所有实例)共享,如访问控制权限允许,可不必创建该类对象而直接用类名加‘.’调用。static成员也称类成员或静态成员,如:类属性、类方法、静态方法等。8单子Singleton设计模板classSingle{privatestaticSingleonlyone=newSingle();//私有的,只能在类的内部访问privateStringname;publicstaticSinglegetSingle(){//getS
7、ingle()为static,不用创建对象即可访问returnonlyone;}privateSingle(){}//private的构造器,不能在类的外部创建该类的对象}publicclassTestSingle{publicstaticvoidmain(Stringargs[]){Singles1=Single.getSingle();//访问静态方法Singles2=Single.getSingle();if(s1==s2){System.out.println("s1isequalstos2!");
8、}}9关键字final应用举例importjava.io.*;publicfinalclassTest{publicstaticinttotalNumber=5;publicfinalintid;publicTest(){id=++totalNumber;}publicstaticvoidmain(String[]args){Testt=newTest();System.out.println(t.id);fin
此文档下载收益归作者所有