JAVA实验_题目7
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第七章类和对象
【实验目的】
(1) 熟练掌握类、类方法的定义
(2) 明确类与对象的关系掌握关键字new的引用
(3) 掌握对象的引用
(4) 掌握构造方法及一般方法的使用
【实验范例】
例1:(类的构造)
定义一个表示学生信息的类Student,要求如下:(有关类的编程)
(1)类Student的成员变量:
sNO表示学号;sName表示姓名;sSex表示性别;sAge表示年龄;sJava:表示Java课程成绩。
(2)类Student带参数的构造方法:
在构造方法中通过形参完成对成员变量的赋值操作。
(3)类Student的方法成员:
getNo():获得学号;
getName():获得姓名;
getSex():获得性别;
getAge()获得年龄;
getJava():获得Java 课程成绩
(4)根据类Student的定义,创建五个该类的对象,输出每个学生的信息,计算并输出这五个学生Java语言成绩的平均值,以及计算并输出他们Java语言成绩的最大值和最小值。
程序代码:
//Pragramme name Student.java;
public class Student {
String sNO, sName, sSex;
int sAge, sJava;
public Student(String XH, String XM, String XB, int NL, int XF) { super();
sNO = XH;
sName = XM;
sSex = XB;
sAge = NL;
sJava = XF;
}
public String getNO() {
return sNO;
}
public String getName() {
return sName;
}
public String getSex() {
return sSex;
}
public int getAge() {
return sAge;
}
public int getJava() {
return sJava;
}
public static void main(String[] args) {
Student[] st = new Student[5];
st[0] = new Student("09zc01", "张三", "男", 19, 94);
st[1] = new Student("09zc02", "李四", "男", 20, 85);
st[2] = new Student("09zc03", "王五", "女", 18, 96);
st[3] = new Student("09zc04", "赵六", "男", 17, 90);
st[4] = new Student("09zc05", "杨七", "女", 21, 88);
int max = 0, min = 100, sum = 0;
System.out.println(" 学生信息:");
for (int i = 0; i < st.length; i++) {
if (st[i].sJava< min)
min = st[i].sJava;
if (st[i].sJava> max)
max = st[i].sJava;
sum = sum + st[i].sJava;
System.out.println("学生编号:" + st[i].getNO() + "姓名: "
+ st[i].getName() + "性别:" + st[i].getSex() + "年龄:"
+ st[i].getAge() + " Java课学分:" + st[i].getJava());
}
System.out.println();
System.out.println(" 共有学生:" + st.length + "平均成绩:" + sum / st.length);
System.out.println(" 最小学分:" + min + ",最大学分:" + max);
}
}
例2:(类对象的使用)
一个景区根据游人的年龄收取不同价格的门票。请编写游人类,根据年龄段决定能够购买的门票价格并输出,然后写出测试类测试该类(建立独立类Tourist来实现门票分类,并在主程序中使用该类的对象,类里面包含2个方法:分别是setAge(int age)和ticket())
程序代码:
import java.util.Scanner;
class Tourist {
int age;
int ticketPrice;
public void setAge(int age) {
this.age = age;
}
public void ticket() {
if (age> 0 &&age< 12)
ticketPrice = 20;
else if (age< 20)
ticketPrice = 40;
else if (age< 50)
ticketPrice = 80;
else
ticketPrice = 35;
System.out.println("门票价格:" + ticketPrice);
}
}
public class Prog1 {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
Tourist t1 = new Tourist();
System.out.print("请输入年龄:");
t1.setAge(input.nextInt());
t1.ticket();
}
}
【综合例子】
例:在第六章综合例子的基础上,编写一个简单的多账户银行存取款系统
要求:
1、完善多账户管理
2、实现简单的循环菜单显示,并实现存|取款、修改密码、显示账户余额等功能(将原来初始化函数改成构造函数)
import java.util.Scanner;
class Account {
int custID;
String custName;
int custPWD;
double custMoney;
Account(int id, String name, int PWD, double money) { custID = id;