北京信息科技大学信息管理学院实验报告课程名称java程序设计实验项目实验二类和对象实验仪器PC、jdk、jcreator专业________________班级/学号___________学生姓名_________________实验日期实验地点成绩_______________________指导教师_____李春强_____________一、实验目的1.掌握类、对象的定义和使用;2.掌握使用类封装对象的属性和功能;3.掌握对象的组合以及参数的传递;4.掌握类变量和实例变量,以及类方法和实例方法的区别;5.掌握包的定义和使用。二、实验内容1.机动车:编写一个java应用程序,该程序中有两个类:Vehicle(用于刻画机动车)和User(主类)。具体要求如下:(1)Vehicle类有一个double类型的speed,用于刻画机动车的速度,一个int类型变量power,用于刻画机动车的功率。方法定义了speedUp(ints)方法,体现机动车有加速功能,定义了speedDown()方法,体现机动车有减速功能,方法setPower(intp)用于设置机动车的功率,方法getPower()方法,用于获取机动车的功率。(2)在主类User的main()方法中用Vehicle类创建对象,并让该对象调用方法设置功率,演示加速和加速功能。2.家中的电视:编写一个java应用程序,模拟家庭买一台电视,即家庭将电视作为自己的一个成员,即调用一个方法将谋个电视的应用传递给自己的电视成员。具体要求如下:(1)有三个源文件:TV.java、Familiy.java和MainClass.java,其中TV.java中的TV类负责创建“电视”对象,Familiy.java中的Familiy类负责创建“家庭”对象,MainClass.java是主类。(2)在主类的main()方法中首先使用TV类创建一个对象haierTV,然后使用Familiy类再创建一个对象zhangsanFamiliy,并将先前TV类的实例haierTV的引用传递给zhangsanFamilily对象的成员变量homeTV。3.共饮同井水编写程序模拟两个村庄共用一口井水。编写一个Village类,该类有一个静态的int类型成员变量waterAmount,用于模拟井水的水量,在主类Land的main()方法中创建两个村庄,一个村庄改变了waterAmount的值,另一村庄查看waterAount的值,另一村庄查看waterAmount的值。4.求方程的根使用package语句将方程的属性即计算根的方法封装在一个有包名的类中,包名是wukong.xiyou,类的名字是SquraEquation。编写一个SunRise的主类,该主类使用import语句应用wukong.xiyou包中的SquraEquation类。三、实验要求1.理解java程序封装的特点,编制完整的相关java程序。2.编写并调试程序lab2-1,lab2-2,lab2-3,lab2-4,掌握类和对象等基本使用方法。四、实验准备1.一台电脑。2.jdk开发环境。3.java上机的基本操作。五、实验过程Lab2_1:package机动车;publicclassuser{publicstaticvoidmain(Stringargs[]){vehiclev=newvehicle();System.out.println(机动车功率为:+v.setPower(100));v.speedUp(15);v.speedDown(8);}}publicclassvehicle{doublespeed;intpower;voidspeedUp(ints){this.speed=s;System.out.println(机动车加速,速度为+s);}voidspeedDown(intt){this.speed=t;System.out.println(机动车减速,速度为+t);}intsetPower(intp){returnp;}intgetPower(intq){returnq;}}Lab2_2:publicclassTV{voidplay(){System.out.println(正在播放动物世界);}}publicclassFamily{TVhomeTV;voidbuyTV(TVtv){tv=this.homeTV;System.out.println(购买一台电视);}}publicclassMainClass{publicstaticvoidmain(Stringargs[]){TVhaierTV=newTV();FamilyzhangsanFamily=newFamily();zhangsanFamily.buyTV(haierTV);haierTV.play();}}Lab2_3:publicclassLand{publicstaticvoidmain(Stringargs[]){Village.WaterAmount=200;System.out.println(水井中有水+Village.WaterAmount+升);Villagev1=newVillage();Villagev2=newVillage();intm=50;System.out.println(v1从水井中取水+m+升);v1.WaterAmount-=m;System.out.println(v2发现水井中有水+Village.WaterAmount+升);System.out.println(v2从水井中取水+m+升);v2.WaterAmount-=m;System.out.println(v1发现水井中有水+Village.WaterAmount+升);}}publicclassVillage{publicstaticintWaterAmount;}Lab2_4:importwukong.xiyou.*;publicclassSunRise{publicstaticvoidmain(Stringargs[]){SquraEquationsq=newSquraEquation();sq.getRoot(100);System.out.println(此数的平方根为+sq.getRoot());}}packagejava.wukong.xiyou;publicclassSquraEquation{publicdoublegetRoot(doublenum){returnMath.sqrt(num);}}六、实验总结:1.2.3.………………..说明:1.实验名称、实验目的、实验内容、实验要求由教师确定,实验前由教师事先填好,然后作为实验报告模版供学生使用;2.实验准备由学生在实验或上机之前填写,教师应该在实验前检查;3.实验过程由学生记录实验的过程,包括操作过程、遇到哪些问题以及如何解决等;4.实验总结由学生在实验后填写,总结本次实验的收获、未解决的问题以及体会和建议等;5.源程序、代码、具体语句等,若表格空间不足时可作为附录另外附页。