资源描述:
《java类的封装实验报告精选资料》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、实验四、类的封装一、实验目的1.掌握类的声明和定义;2.理解有静态成员和非静态成员变量的区别;3.理解基本参数和引用参数的区别;4.掌握类构造方法的编写;5.实现类的方法;6.掌握创建类实例的方法;7.学会定义和使用具有重载方法的继承类;8.掌握方法的重新定义。二、实验内容1.以下程序运行的结果是。运行结果初始时x=10,y=10方法调用中x=100,y=100方法调用后x=100,y=100publicclasssy4_1{publicstaticvoidmain(String[]args){Powerp=newPower();p.ff2(10,10);Sys
2、tem.out.println("方法调用后x="+p.x+",y="+p.y);}}classPower{intx=10,y=10;voidff2(intpassX,intpassY){System.out.println("初始时x="+x+",y="+y);x=passX*passX;y=passY*passY;System.out.println("方法调用中x="+x+",y="+y);}}2.建立日期类及日期对象的简单引用,程序结构如下,写出完整代码。publicclassMyDate0//声明日期类{intyear,month,day;//成员变量
3、voidset(inty,intm,intd){...}//成员方法,设置日期publicStringtoString(){…}//成员方法返回中文日期publicstaticvoidmain(Stringargs[])//主方法{….//创建日期对象d1….//显示d1的中文日期….//设置d1的成员变量为今天日期….//显示设置后d1的中文日期}//endmain}//endclass//代码如下:packagecom.text;publicclassMyDate{intyear,month,day;voidsetDate(inty,intm,intd){t
4、his.year=y;this.month=m;this.day=d;}publicStringtoString(){return(this.year+"年"+this.month+"月"+this.day+"日");}publicstaticvoidmain(String[]args){//TODOAuto-generatedmethodstubMyDated1=newMyDate();System.out.println(d1.toString());d1.setDate(2014,9,17);System.out.println(d1.toString()
5、);}}3.创建学生类Student来完成下面问题。(1)创建类Student,包括属性学号no、姓名name和年龄age,且都是private类型;(2)声明一个构造方法,以初始化对象的所有的域;(3)声明获得各属性(学号、姓名和年龄)的各个方法;(4)声明设置各属性(学号、姓名和年龄)的各个方法;(5)声明一个public型的toString方法,将该类所有域信息组合成一个字符串;(6)声明统计创建Student对象的个数的成员变量count和得到Student对象的个数的方法。在主类中使用Student类创建两个Student对象,输出对象所有域信息;修改
6、其姓名和年龄,并显示。//代码如下:packagecom.text;publicclassDemo4{/***@paramargs*/publicstaticvoidmain(String[]args){//TODOAuto-generatedmethodstubStudents1=newStudent();Students2=newStudent();System.out.println("对象个数:"+Student.count);s1.setAge(16);s1.setName("小米");s1.setNo(20145);s2.setAge(17);s2.
7、setName("小S");s2.setNo(20144);System.out.println(s1.toString());System.out.println(s2.toString());}}classStudent{privateintno;privateStringname;privateintage;staticintcount;publicStudent(){count++;}publicintgetNo(){returnno;}publicvoidsetNo(intno){this.no=no;}publicStringgetName(){re
8、turnname;}pu