欢迎来到天天文库
浏览记录
ID:8976131
大小:300.11 KB
页数:21页
时间:2018-04-13
《java主要修饰符的使用》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、目录Java主要修饰符的使用“说明书”1一、public、protected和private2一)对类的类型的修饰2二)未标注此类类型的成员变量和成员函数2三)public、protected和private在子类中的可见情况3四)public、protected和private在非子类中的可见情况7二、final9(一)对类类型的修饰10(二)final修饰的成员函数10(三)final修饰的成员变量11三、static11附录:原函数14一)father.java14二)childinsamepa.java15三)child
2、indifferentp.java16四)AFINALCLASS.java17五)DEFFERENTPAKAEGEIMPORT.java18六)FORSTATIC.java19七)ROOT.java19——武汉理工软件1003班0121010680328陈莹伊Java主要修饰符的使用“说明书”示例用工作空间结构:一、public、protected和private一)对类的类型的修饰类的类型只能使用public修饰,或者省略。二)未标注此类类型的成员变量和成员函数未标注类型的成员变量和成员函数在java类中的使用可见类别不同于p
3、ublic、protected和private。当成员变量和成员函数无这三个修饰符修饰,无论是该类的子类还是非子类,只要是和该类属于同一个包,这些成员变量和成员函数都是可见的。而对于不属于同一个包的类,它们则是不可见的。示例用classfather的成员列表:在同包子类中的可见情况:在不同包子类中的可见情况:在同包非子类中的可见情况:在不同包非子类中的可见情况:三)public、protected和private在子类中的可见情况father类成员表列:a)对于子类而言,无论是否属于同一个包,父类中的public类型和prote
4、cted类型变量和函数在子类中是可见的。在同包中的子类:在不同包中的子类:b)子类可通过父类的public类和protected类成员函数调用父类中的private类变量和函数,如父类的private变量的getter和setter函数。示例用子类函数:publicvoidtest1(){///证明子类可以调用父类的public和protected类型this.provan=9;this.pubvan=19;}publicvoidtest2(){//通过set函数来影响父类的private成员变量this.provan=99;t
5、his.pubvan=100;this.setPrivan(101);}在main函数中的使用:childinsamepacis=newchildinsamepa(22,23,24);cis.printfa();cis.test1();cis.printfa();cis.test2();cis.printfa();运行结果截图:c)对于成员变量而言,子类中可以存在父类的同名变量且可以为不同的修饰符所修饰。这些成员变量在子类的变量使用时覆盖了父类继承下来的同名变量,但在使用父类的变量使用函数时,则对于这些函数,这些同名变量对他们没
6、有任何影响。既使用父类的变量使用函数时,受到使用的是父类继承下来的成员变量而非子类重新定义的成员变量。示例用子类变量和该变量的调用函数:publicintprovan;publicvoidtest(){//protected变量调用实验this.provan=12;}在main函数中的使用:childindifferentpcid=newchildindifferentp(121,122,123);cid.printfa();cid.test();cid.printfa();System.out.println(cid.prov
7、an);运行结果截图:①未定义子类变量provan且在主函数中没有打印provan语句时:②定义了子类变量provan时:d)对于普通的public和protected函数而言,子类可使用同名的函数对其进行彻底的覆盖,既即使在使用父类的函数对这些被覆盖的函数进行调用时,所调用的也是子类中的同名函数。这些函数可以和父类所定义函数类型不相同。函数体:publicvoidpubfunc(){//覆盖System.out.println("thisisapublicfunctionofthischildclass.");}在main函数
8、中的使用:childinsamepacis=newchildinsamepa(22,23,24);cis.printfa();cis.printpubfunc();运行结果截图:e)对于普通的private函数而言,其覆盖关系类似于成员变量,既子类中的同名函数无
此文档下载收益归作者所有