第二次Java实验报告

Java实验报告

班级 计科二班 学号 20188437 姓名 何磊

完成时间 2019/9/12

评分等级

实验二 Java简单类与对象

  1. 实验目的

    1. 掌握类的定义,熟悉属性、构造函数、方法的作用,掌握用类作为类型声明变量和方法返回值;
    2. 理解类和对象的区别,掌握构造函数的使用,熟悉通过对象名引用实例的方法和属性;
    3. 理解static修饰付对类、类成员变量及类方法的影响。
  2. 实验内容
    1. 写一个名为Rectangle的类表示矩形。其属性包括宽width、高height和颜色color,width和height都是double型的,而color则是String类型的。要求该类具有:

      (1) 使用构造函数完成各属性的初始赋值

      (2) 使用get…()和set…()的形式完成属性的访问及修改

      (3) 提供计算面积的getArea()方法和计算周长的getLength()方法

    2. 银行的账户记录Account有账户的唯一性标识(11个长度的字符和数字的组合),用户的姓名,开户日期,账户密码(六位的数字,可以用0开头),当前的余额。银行规定新开一个账户时,银行方面提供一个标识符、账户初始密码123456,客户提供姓名,开户时客户可以直接存入一笔初始账户金额,不提供时初始余额为0。定义该类,并要求该类提供如下方法:存款、取款、变更密码、可以分别查询账户的标识、姓名、开户日期、当前余额等信息。
  1. 实验过程(请自己调整格式)

1.

(一)实验代码:

package Rectangle表示矩形;

public class Rectangle {

double width,height,area,length;

String color;

public Rectangle(double width,double height,String color){

this.setWidth(width);

this.setHeight(height);

this.setColor(color);

this.setArea(width,height);

this.setLength(width,height);

}

public void tell(){

System.out.println("宽:"+getWidth()+",高:"+getHeight()+",颜色:"+getColor()+",面积:"+getArea()+",周长:"+getLength());

}

public double getWidth() {

return width;

}

public void setWidth(double width) {

this.width = width;

}

public double getHeight() {

return height;

}

public void setHeight(double height) {

this.height = height;

}

public String getColor() {

return color;

}

public void setColor(String color) {

this.color = color;

}

public double getArea(){

return area;

}

public void setArea(double width,double height){

this.area=width*height;

}

public double getLength(){

return length;

}

public void setLength(double width,double height){

this.length=2*(width+height);

}

}

public class调用Rectangle类 {

public static void main(String[] args) {

Rectangle rec=new Rectangle(15,20,"red");

rec.tell();

}

}

(二)运行结果

2.

(一)实验代码:

package 银行系统;

import java.util.Scanner;
import java.util.Date;

class chuli {
    private String user,password,name="none",date;
    private double balance;
    public chuli(String password,double balance){
        this.setPassword(password);
        this.setBalance(balance);
    }
    public String getUser() {
        return user;
    }
    public void setUser(String user) {
        this.user = user;
    }
    public String getPassword() {
        return password;
    }
    public void setPassword(String password) {
        this.password = password;
    }
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    public double getBalance() {
        return balance;
    }
    public void setBalance(double balance) {
        this.balance = balance;
    }
    public String getDate() {
        return date;
    }
    public void setDate(String date) {
        this.date = date;
    }
}

public class bank {
    static chuli per[]=new chuli[100];
static int i=-1;
static int id=0;
static String s;
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        for(int j=0;j<100;j++){
            per[j]=new chuli("123456",0.0);
            }
        zhuyemian();
    }

    public static void yewu(int i) {
        // TODO Auto-generated method stub
        System.out.println("1:存款 2:取款 3:变更密码 4:查询账户标识 5:查询姓名 6:查询开户日期 7:当前余额 0:返回");
        Scanner input=new Scanner(System.in);
        switch(input.nextInt()){
        case 1:System.out.println("存款金额:");
        per[i].setBalance(input.nextDouble()+per[i].getBalance());
        System.out.println("存款成功!");yewu(i);
        case 2:System.out.println("取款金额:");
        if(per[i].getBalance()-input.nextDouble()<0){
            System.out.println("余额不足!");yewu(i);
        }
        else{
        per[i].setBalance(per[i].getBalance()-input.nextDouble());
        System.out.println("取款成功!");yewu(i);
        }
        case 3:System.out.println("请输入新密码:");
        per[i].setPassword(input.next());
        System.out.println("修改成功!");yewu(i);
        case 4:System.out.println("您的账户标识为:"+per[i].getUser());yewu(i);
        case 5:System.out.println("您的姓名为:"+per[i].getName());yewu(i);
        case 6:System.out.println("您的开户日期为:"+per[i].getDate());yewu(i);
        case 7:System.out.println("您的余额为:"+per[i].getBalance());yewu(i);
        case 0:zhuyemian();
        }
    }

    public static void denglu() {
        // TODO Auto-generated method stub
        System.out.println("请输入您的姓名:");
        Scanner input=new Scanner(System.in);
        s=input.next();
        i=-1;
        while(i<99){
            i++;
            if(s.equals(per[i].getName())){
                System.out.println("请输入您的密码:");
                if(input.next().equals(per[i].getPassword())){
                    System.out.println("登陆成功!");
                    yewu(i);
                }
                else{
                    System.out.println("姓名或密码有误,请重新输入");
                    denglu();
                }
            }
        }
        System.out.println("没有此用户!");
        zhuyemian();
    }

    public static void kaihu() {
        // TODO Auto-generated method stub
        per[id]=new chuli("123456",0.0);
        if(id>=100){
            s="uniqueid"+id;
            per[id].setUser(s);
}else if(id>=10){
            s="uniqueid0"+id;
            per[id].setUser(s);
}else{
            s="uniqueid00"+id;
            per[id].setUser(s);
}
        Date date=new Date();
        per[id].setDate(date.toString());
        System.out.println("请输入您的姓名:");
        Scanner input=new Scanner(System.in);
        per[id].setName(input.next());
        System.out.println("开户成功,您的初始密码为123456,请尽快更改!");
        id++;
        denglu();
    }

    public static void zhuyemian() {
        // TODO Auto-generated method stub
        System.out.println("1:开户 2:业务办理");
        Scanner input =new Scanner(System.in);
        s=input.next();
        if(s.equals("1")){
kaihu();
}
        if(s.equals("2")){
denglu();
}
    }
}

(二)运行结果

1:开户 2:业务办理

2

请输入您的姓名:

何磊

没有此用户!

1:开户 2:业务办理

1

请输入您的姓名:

何磊

开户成功,您的初始密码为123456,请尽快更改!

请输入您的姓名:

何磊

请输入您的密码:

123456

登陆成功!

1:存款 2:取款 3:变更密码 4:查询账户标识 5:查询姓名 6:查询开户日期 7:当前余额 0:返回

3

请输入新密码:

654321

修改成功!

1:存款 2:取款 3:变更密码 4:查询账户标识 5:查询姓名 6:查询开户日期 7:当前余额 0:返回

0

1:开户 2:业务办理

2

请输入您的姓名:

何磊

请输入您的密码:

123456

姓名或密码有误,请重新输入

请输入您的姓名:

何磊

请输入您的密码:

654321

登陆成功!

1:存款 2:取款 3:变更密码 4:查询账户标识 5:查询姓名 6:查询开户日期 7:当前余额 0:返回

7

您的余额为:0.0

1:存款 2:取款 3:变更密码 4:查询账户标识 5:查询姓名 6:查询开户日期 7:当前余额 0:返回

6

您的开户日期为:Sat Sep 14 13:22:58 CST 2019

1:存款 2:取款 3:变更密码 4:查询账户标识 5:查询姓名 6:查询开户日期 7:当前余额 0:返回

5

您的姓名为:何磊

1:存款 2:取款 3:变更密码 4:查询账户标识 5:查询姓名 6:查询开户日期 7:当前余额 0:返回

4

您的账户标识为:uniqueid000

1:存款 2:取款 3:变更密码 4:查询账户标识 5:查询姓名 6:查询开户日期 7:当前余额 0:返回

1

存款金额:

10

存款成功!

1:存款 2:取款 3:变更密码 4:查询账户标识 5:查询姓名 6:查询开户日期 7:当前余额 0:返回

7

您的余额为:10.0

1:存款 2:取款 3:变更密码 4:查询账户标识 5:查询姓名 6:查询开户日期 7:当前余额 0:返回

2

取款金额:

5

取款成功!

1:存款 2:取款 3:变更密码 4:查询账户标识 5:查询姓名 6:查询开户日期 7:当前余额 0:返回

7

您的余额为:5.0

1:存款 2:取款 3:变更密码 4:查询账户标识 5:查询姓名 6:查询开户日期 7:当前余额 0:返回

2

取款金额:

6

余额不足!

1:存款 2:取款 3:变更密码 4:查询账户标识 5:查询姓名 6:查询开户日期 7:当前余额 0:返回

0

1:开户 2:业务办理

1

请输入您的姓名:

李代传

开户成功,您的初始密码为123456,请尽快更改!

请输入您的姓名:

李代传

请输入您的密码:

123456

登陆成功!

1:存款 2:取款 3:变更密码 4:查询账户标识 5:查询姓名 6:查询开户日期 7:当前余额 0:返回

7

您的余额为:0.0

1:存款 2:取款 3:变更密码 4:查询账户标识 5:查询姓名 6:查询开户日期 7:当前余额 0:返回

6

您的开户日期为:Sat Sep 14 13:24:45 CST 2019

1:存款 2:取款 3:变更密码 4:查询账户标识 5:查询姓名 6:查询开户日期 7:当前余额 0:返回

5

您的姓名为:李代传

1:存款 2:取款 3:变更密码 4:查询账户标识 5:查询姓名 6:查询开户日期 7:当前余额 0:返回

4

您的账户标识为:uniqueid001

1:存款 2:取款 3:变更密码 4:查询账户标识 5:查询姓名 6:查询开户日期 7:当前余额 0:返回

  1. 总结:

这一次的java实验教上一周难度有所提升,但也只是新知识的基础应用,完成的还算顺利吧。

原文地址:https://www.cnblogs.com/hlywzj/p/11518985.html

时间: 2024-10-10 06:44:44

第二次Java实验报告的相关文章

第一次java实验报告

Java实验报告 20135226黄坤 一.实验内容 (一).命令行下Java程序开发 (二).Eclipse下Java程序开发.调试 (三).通过命令行和eclipse两种方式实现四则运算并进行测试 二.实验过程 Eclipse下Java程序开发.调试 在Eclipse中单击File->New-> Java Project新建Java项目,输入项目名称Hellojy,并单击Finish按钮完成新建项目,在Eclipse中单击File->New->Class新建Java类 据Jav

20135231 JAVA实验报告三:敏捷开发与XP实践

---恢复内容开始--- JAVA实验报告三:敏捷开发与XP实践 20135231 何佳 实验内容 1. XP基础 2. XP核心实践 3. 相关工具 实验要求 1.没有Linux基础的同学建议先学习<Linux基础入门(新版)><Vim编辑器> 课程 2.完成实验.撰写实验报告,实验报告以博客方式发表在博客园,注意实验报告重点是运行结果,遇到的问题(工具查找,安装,使用,程序的编辑,调试,运行等).解决办法(空洞的方法如“查网络”.“问同学”.“看书”等一律得0分)以及分析(从中

Java实验报告二

北京电子科技学院(BESTI) 实     验    报     告 课程:Java程序设计实验   班级:1353  姓名:符运锦  学号:20135323 成绩:                           指导教师:娄嘉鹏      实验日期:2015.5.8 实验密级:无            预习程度:                   实验时间:15:30~18:00 仪器组次:  23                    必修/选修: 选修              

Java实验报告二:Java面向对象程序设计

Java实验报告二:Java面向对象程序设计                                                                                                      实验要求: 1. 初步掌握单元测试和TDD 2. 理解并掌握面向对象三要素:封装.继承.多态 3. 初步掌握UML建模 4. 熟悉S.O.L.I.D原则 5. 了解设计模式 实验内容 (一)单元测试 (二)面向对象三要素 (三)设计模式初步 (四)练习

Java实验报告五:Java网络编程及安全

Java实验报告五:Java网络编程及安全                                                                                                      20135315  宋宸宁 一.实验内容 1.掌握Socket程序的编写: 2.掌握密码技术的使用: 3.设计安全传输系统. 二.实验步骤 1. 基于Java Socket实现安全传输 2. 基于TCP实现客户端和服务器,结对编程一人负责客户端,一人负责

Java实验报告(一)

Java实验报告(一) 实验过程 1. 打印输出所有的"水仙花数",所谓"水仙花数"是指一个3位数,其中各位数字立方和等于该数本身.例如,153是一个"水仙花数". 实验源码: import java.lang.Math; class Narcissus{ public static void main(String[] args){ int num1,num2,num3; int count = 0; for(int i = 100;i <

java实验报告三

实验三 敏捷开发与XP实践 一.实验内容 1. XP基础 2. XP核心实践 3. 相关工具 二.实验步骤 (一)敏捷开发与XP 软件工程是把系统的.有序的.可量化的方法应用到软件的开发.运营和维护上的过程.软件工程包括下列领域:软件需求分析.软件设计.软件构建.软件测试和软件维护. 人们在开发.运营.维护软件的过程中有很多技术.做法.习惯和思想体系.软件工程把这些相关的技术和过程统一到一个体系中,叫“软件开发流程”.软件开发流程的目的是为了提高软件开发.运营.维护的效率,并提高软件的质量.用户

Java实验报告(实验四)

北京电子科技学院(BESTI) 实     验    报     告 课程:Java    班级:1352班      姓名:王国伊    学号:20135207 成绩:             指导教师:娄嘉鹏       实验日期:2015.6.9 实验密级:无       预习程度:           实验时间:15:30-18:00 仪器组次:         必修/选修:选修     实验序号:四 实验名称:  服务器与客户端间传送信息加解密 实验目的与要求: 1.没有Linux基础

JAVA实验报告三:敏捷开发与XP实践

实验内容 1. XP基础 2. XP核心实践 3. 相关工具 实验步骤 (一)敏捷开发与XP 软件工程是把系统的.有序的.可量化的方法应用到软件的开发.运营和维护上的过程.软件工程包括下列领域:软件需求分析.软件设计.软件构建.软件测试和软件维护. 人们在开发.运营.维护软件的过程中有很多技术.做法.习惯和思想体系.软件工程把这些相关的技术和过程统一到一个体系中,叫“软件开发流程”.软件开发流程的目的是为了提高软件开发.运营.维护的效率,并提高软件的质量.用户满意度.可靠性和软件的可维护性. 光