《Java程序设计:实验四.docx》由会员分享,可在线阅读,更多相关《Java程序设计:实验四.docx(6页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、实验四面向对象程序设计一【实验目的】.理解对象和类,掌握类的定义及如何创立一个对象。1 .掌握构造方法的运用。2 .掌握方法的定义和参数传递。3 .掌握方法的重载;【实验准备】一、复习配套教材相关章节的内容;二、预习本次实验;【实验内容】1.编程创立一个Box类,在其中定义三个变量表示一个立方体的长、 宽和高;定义一个构造方法对这三个变量进行初始化,定义一个方 法求立方体的体积;定义一个方法求立方体的外表积。在主程序中 创立一个立方体的对象,输出给定尺寸的立方体的体积和外表积。public class Box double length;double width;double height;p
2、ublic Box(double 1ngth,double width,double heigth) ( this.length = length; this.width = width; this.height = heigth; public double getV()return length*width*height;public double getArea()return 2*(length*width+length*heightswidth*height);public static void main(String args)(Box boxl = new Box (200,2
3、00,200);System. out. printin (第 1 个箱子的体积为:n+boxl. getV () + 外表积为:n+boxl . getArea ();Box box2 = new Box (100z100,100);System, out. printin (第2个箱子的体积为:n+box2 . getV () + ” 外表积为:n+box2 . getArea ();)运行结果为:第1个箱子的体积为:8000000.0外表积为:240000.0第2个箱子的体积为:1000000.0外表积为:60000.02、编写一个程序,显示水果的定购行情。定义一个带有参数的构造 方法,
4、这些参数用于存放产品名,数量和价格。在主程序中输出三 种不同的水果。public class fruite String name;int number;double price;public fruite (String name,int numberrdouble price)(this.name = name;this.number = number;this.price = price;public void showinfo()System, out. printin (水果名为 :H+this . name);System, out. printin (水果数量为:H+this .
5、 number);Systm. out .printin (水果价格为:n+this . price);)public static void main(String args)fruite f= new fruit(“苹果”,2,4);f , showinfo();fruite f1= new fruit(“香蕉”,2,3); fl showinfo();fruite f2= new fruit(“葡萄”,2,2);f2 . showinfo();运行结果为:水果名为:苹果 水果数量为:2 水果价格为:4.0水果名为:香蕉 水果数量为:2 水果价格为:3.0水果名为:葡萄 水果数量为:2 水
6、果价格为:2.03、编写一个学生类,封装了学生的学号、姓名、成绩等信息。再编写一个主类,主类中有一个打印学生信息的方法,该方法接受 学生类对象为参数,并依次输出学生信息;main ()方法中生成学 生类对象,并调用打印方法输出学生信息。先建一个Student的类package test;public class Student private String name;private int classic1;private int avge;public String getName() return name;public void setName(String name) this.nam
7、e = name;)public int getClassId() return classic!;public void setClassId(int classic!) this.classic! = classic);public int getAvge() return avge;public void setAvge(int avge) this.avge = avge;)public void studentInfoemation(String name,int class工d,int avge)System.out.printIn(姓名:M+name);Sy stem. out.
8、 printing 班级:n+classld);System . out . print In ( 成绩:n+avge);在建一个Stu的类public class Stu public static void main(String args) Student student = new Student。;student. student Infoemat ion (“温开勇”,31113120, 80);)运行结果为:姓名:温开勇班级:31113120成绩:804、运行以下两个程序并分析输出结果的不同,想一想是为什么?程序一:public class PassValuepublic sta
9、tic void main(String args) int x=5;change (x);System, out. println(x);public static void change (int x) x=3;结果:5程序二:public Calss PassRef int x;public static void main(String args) PassRet obj=new PassRef();obj.x=5;change (obj);System, out. println(obj. x);public static void change(PassRef obj) obj.x
10、=3;结果:3分析原因:在程序一中,方法int x为局部变量,作用域为方法change (int x) 以内,调用结束时变量“x”消失,其结果不会影响到mian()方法中的变量int xo而在程序二中,通过方法的参数传递,将对一个对象的引用值赋给了另一 个变量,从而通过另一个变量也能对同一个对象进行引用。5、编写一个Java程序,利用方法的重载来实现分别把两个整型和浮点型数值相加,当没有传递参数时,给出一个默认值计算求和。注意此题应写出三个重载方法,即不带参数的方法,带两个整型参数的方法和带两个浮点型参数的方法。public class AddDemo int add() return 4+8
11、;int add(int x, int y) return x + y;float add(float x, float y) return x + y;double add(double x, double y) return x + y;)public static void main(String args) AddDemo sum = new AddDemo();System.。.printing第一个和 + sum.add(2.1J 3.14);System.。, printing第二个和+ sum.add();System.out.printin(第三个和“ + sum.add(2J 3);System.out.printin(第四个和“ + sum.add(2.0f? 3.0f);) ) 运行结果为:第一个和5.24第二个和12第三个和5第四个和5.0【总结与体会】本次实验课是对软件对象也有状态和行为。软件对象的状态就 是属性,行为通过方法表达。在软件开发中,方法操作对象内部状 态的改变,对象的相互调用也是通过方法来完成。并在本次实验课 中重点掌握了对象的构造方法的运用和方法的定义、参数的传递, 最后就是对方法的重载的运用了。
限制150内