java实验_题目7

上传人:第*** 文档编号:34253975 上传时间:2018-02-22 格式:DOCX 页数:6 大小:31.99KB
返回 下载 相关 举报
java实验_题目7_第1页
第1页 / 共6页
java实验_题目7_第2页
第2页 / 共6页
java实验_题目7_第3页
第3页 / 共6页
java实验_题目7_第4页
第4页 / 共6页
java实验_题目7_第5页
第5页 / 共6页
点击查看更多>>
资源描述

《java实验_题目7》由会员分享,可在线阅读,更多相关《java实验_题目7(6页珍藏版)》请在金锄头文库上搜索。

1、第七章类和对象【实验目的】(1) 熟练掌握类、类方法的定义(2) 明确类与对象的关系掌握关键字 new 的引用(3) 掌握对象的引用(4) 掌握构造方法及一般方法的使用【实验范例】例 1:(类的构造)定义一个表示学生信息的类 Student,要求如下:(有关类的编程)(1)类 Student 的成员变量:sNO 表示学号;sName 表示姓名;sSex 表示性别;sAge 表示年龄;sJava :表示 Java 课程成绩。(2)类 Student 带参数的构造方法:在构造方法中通过形参完成对成员变量的赋值操作。(3)类 Student 的方法成员:getNo():获得学号;getName():

2、获得姓名;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, in

3、t 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 Student5;s

4、t0 = new Student(09zc01, 张三, 男 , 19, 94);st1 = new Student(09zc02, 李四, 男 , 20, 85);st2 = new Student(09zc03, 王五, 女 , 18, 96);st3 = new Student(09zc04, 赵六, 男 , 17, 90);st4 = new Student(09zc05, 杨七, 女 , 21, 88);int max = 0, min = 100, sum = 0;System.out.println( 学生信息: );for (int i = 0; i max)max = sti

5、.sJava;sum = sum + sti.sJava;System.out.println(学生编号: + sti.getNO() + 姓名: + sti.getName() + 性别: + sti.getSex() + 年龄:+ sti.getAge() + Java课学分: + sti.getJava();System.out.println();System.out.println( 共有学生: + st.length + 平均成绩: + sum / st.length);System.out.println( 最小学分: + min + ,最大学分: + max);例 2:(类对象

6、的使用)一个景区根据游人的年龄收取不同价格的门票。请编写游人类,根据年龄段决定能够购买的门票价格并输出,然后写出测试类测试该类(建立独立类 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)ticketPr

7、ice = 20;else if (age 20)ticketPrice = 40;else if (age 50)ticketPrice = 80;elseticketPrice = 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.n

8、extInt();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;custName = name;cu

9、stPWD = PWD;custMoney = money;void displayAccout() System.out.println(账号: + custID);System.out.println(户名: + custName);System.out.println(余额: + custMoney);boolean deposit(double money)custMoney += money;return true;boolean withdraw(double money)if (custMoneymoney) return false;elsecustMoney -= money

10、;return true;void changePWD(int PWD)custPWD = PWD;public class CustDemo public static void main(String args) Account cust = new Account4;cust0 = new Account(1001, Tom, 111, 10000.0f);cust1 = new Account(1002, Mike, 222, 20000.0f);cust2 = new Account(1003, Bob, 333, 30000.0f);cust3 = new Account(1004

11、, Cindy, 444, 40000.0f);int ind = 0;double money;System.out.println(请输入账号: );Scanner sc = new Scanner(System.in);long id = sc.nextLong();for (int i=0; i4; i+)if (custi.custID = id) ind=i;while (true) System.out.println(n1.存款);System.out.println(2.取款);System.out.println(3.修改密码);System.out.println(4.查

12、询);System.out.println(5.退出);sc = new Scanner(System.in);switch(sc.nextInt() case 1:System.out.println(请输入存款金额: );money = sc.nextDouble();custind.deposit(money);custind.displayAccout();break;case 2:System.out.println(请输入取款金额: );money = sc.nextDouble();if (custind.withdraw(money) custind.displayAccout

13、();else System.out.println(您的账号余额不足! );break;case 3:System.out.println(请输入新密码: ); custind.custPWD = sc.nextInt();break;case 4:custind.displayAccout(); break;case 5:System.out.println(欢迎使用xxx 银行系统! ); System.exit(1);【练习题目】7-1. (类、类方法的使用)输入两个正整数 m 和 n,求其最大公约数和最小公倍数。 (最小公倍数=m*n/最大公约数)(求最大公约数 GCD 使用类方法实

14、现,并在主程序中使用该类方法)7-2. (对象、对象方法的使用)编写一个完整的 Java 程序复数类 Complex,使两个复数,如 1+2i 和 3+4i 相加产生一个新的复数 4+6i 。复数类 Complex 必须满足如下要求:(1) 、复数类 Complex 的属性有:realPart : int 型,代表复数的实数部分 imaginPart : int 型,代表复数的虚数部分定义该类的构造方法(2) 、复数类 Complex 的方法有:构造方法一,将复数的实部和虚部都置 0 构造方法二,形参 r 为实部的初值, i 为虚部的初值。(3)addComplex 方法: 将当前复数对象与形

15、参复数对象相加,所得的结果仍是一个复数值,返回给此方法的调用者。(4)toString( ) 方法: 把当前复数对象的实部、虚部组合成 a+bi 的字符串形式,其中 a和 b 分别为实部和虚部的数据。7-3. (类的使用)设计一个 Course 类,它代表学校中的一门课程。按照实际情况将这门课程的相关信息组织成它的属性,并定义必要的相应的方法。7-4. (类定义)定义一个表示水果的类 Fruit,要求如下:(1)私有类的成员变量:fName 表示水果名称,fColor 表示水果颜色。(2)类的成员方法:getName(): 获得水果名称。(3)类的成员方法:getcolor():获得水果颜色。(4)类的成员方法:show_fName ():显示水果名称。(5)类的成员方法:show_fColor ():显示水果颜色。【综合练习】仿照综合例子,在第六章综合例子的基础上改进。要求:1、将初始化函数改为构造函数2、建立 4 种不同油品类型(对象数组) ,信息为油品 G90 G93 G97 D0单价 6.2 6.5 6.9 6.03、建立 4 张加油卡(对象数组 ),信息为卡号 车牌 密码 充值总额 余额201512120001 山 A66666 123

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 解决方案

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号