JAVA实验_题目7.docx_第1页
JAVA实验_题目7.docx_第2页
JAVA实验_题目7.docx_第3页
JAVA实验_题目7.docx_第4页
JAVA实验_题目7.docx_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第七章类和对象【实验目的】(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 Student5;st0 = 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 st.length; i+) if (sti.sJava max)max = sti.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:(类对象的使用)一个景区根据游人的年龄收取不同价格的门票。请编写游人类,根据年龄段决定能够购买的门票价格并输出,然后写出测试类测试该类(建立独立类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;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.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;custName = name;custPWD = 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;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, 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.查询);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();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使用类方法实现,并在主程序中使用该类方法)7-2. (对象、对象方法的使用)编写一个完整的Java程序复数类Complex,使两个复数,如 1+2i 和3+4i 相加产生一个新的复数 4+6i 。复数类Complex必须满足如下要求:(1)、复数类Complex 的属性有:realPart : int型,代表复数的实数部分imaginPart : int型,代表复数的虚数部分定义该类的构造方法(2)、复数类Complex 的方法有:构造方法一,将复数的实部和虚部都置0 构造方法二,形参 r 为实部的初值,i为虚部的初值。(3)addComplex方法: 将当前复数对象与形参复数对象相加,所得的结果仍是一个复数值,返回给此方法的调用者。(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种不同油品类型(对

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论