Java实验报告

班级 学号 姓名
完成时间
评分等级
实验二 Java简单类与对象
实验目的
掌握类的定义,熟悉属性、构造函数、方法的作用,掌握用类作为类型声明变量和方法返回值;
理解类和对象的区别,掌握构造函数的使用,熟悉通过对象名引用实例的方法和属性;
理解static修饰付对类、类成员变量及类方法的影响。
实验内容
写一个名为Rectangle的类表示矩形。其属性包括宽width、高height和颜色color,width和height都是double型的,而color则是String类型的。要求该类具有:
(1) 使用构造函数完成各属性的初始赋值
(2) 使用get…()和set…()的形式完成属性的访问及修改
(3) 提供计算面积的getArea()方法和计算周长的getLength()方法
银行的账户记录Account有账户的唯一性标识(11个长度的字符和数字的组合),用户的姓名,开户日期,账户密码(六位的数字,可以用0开头),当前的余额。银行规定新开一个账户时,银行方面提供一个标识符、账户初始密码123456,客户提供姓名,开户时客户可以直接存入一笔初始账户金额,不提供时初始余额为0。定义该类,并要求该类提供如下方法:存款、取款、变更密码、可以分别查询账户的标识、姓名、开户日期、当前余额等信息。

实验过程(请自己调整格式)
1
写一个名为Rectangle的类表示矩形。其属性包括宽width、高height和颜色color,width和height都是double型的,而color则是String类型的。要求该类具有:
(1) 使用构造函数完成各属性的初始赋值
(2) 使用get…()和set…()的形式完成属性的访问及修改
(3) 提供计算面积的getArea()方法和计算周长的getLength()方法
实验代码:

public class Rectangle {
    private  double width;
    private  double height;
    private  String color;
     public void tell() {
         System.out.print("面积是"+(width*height)+"\n"+"周长是"+2*(width+height)+"\n");
         System.out.println("高为"+height);
         System.out.println("宽为"+width);
         System.out.println("颜色为"+color);
     }
    public String getColor(){
        return color;
    }
    public void setColor(String n){
        color=n;
    }
    public double getWidth(){
        return width;
    }
    public void setWidth(double a){
        width=a;
    }
    public double getHeight() {
        return height;
    }
    public void setHeight(double b) {
        height=b;
    }
}
public class fff{

    public static void main(String arge[]) {
        Rectangle r1=new Rectangle();
        a1.setColor("黄色");
        a1.setHeight(20);
        a1.setWidth(10);
        a1.tell();
        
    }
}

实验结果

实验代码2

import java.util.Scanner;
public class Account {
    public int id;
    public int password;
    public String name;
    public int money;
    
    
public Account(int id, int password, String name, int money) {
        this.id = id;
        this.password = password;
        this.name = name;
        this.money = money;
    }
    //  有一个方法show(),显示账户的账号、姓名和余额信息
    public void show(){
        System.out.println("账户:" + id);
        System.out.println("姓名:" + name);
        System.out.println("余额:" + money);
    }
    /*有一个取款方法 takeMoney(),先让用户输入密码验证,
    密码正确后输入取款金额,取款成功后余额减除相应的金额*/
    public void takeMoney(){
        while(true){
            Scanner sc = new Scanner(System.in);
            System.out.println("请输入密码进行验证!");
            int pass = sc.nextInt();
            if(pass == password){
                System.out.println("请输入需要取款的金额:");
                int withdrawals = sc.nextInt();
                if(withdrawals <= money) {
                    money= money-withdrawals;
                    System.out.println("余额为:" + money);
                }else {
                    System.out.println("当前余额不足" );
                }
                break;
            }else{
                System.out.println("你输入的密码有误,请重新输入!");
            }
        }
    }
    
//  有一个存款方法saveMoney(int money),存款是直接传入存款金额,账户余额增加相应的金额
    
    public void saveMoney(int moneys){  
        money = money+moneys;
        System.out.println("此次存款为:" + moneys);
        System.out.println("账户余额为:" + money);
    }
    
    public static void main(String[] args) {
        Account acc = new Account(10010,123456,"阿桦",100000);
        /*
        acc.id = 10010;
        acc.name = "阿桦";
        acc.money = 100000;
        acc.password = 123456;
        */
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入需要执行的操作");
        System.out.println("***1银行账户信息***");
        System.out.println("***2取款操作***");
        System.out.println("***3存款操作***");
        System.out.println("***4退出系统***");
        int s = sc.nextInt();
            switch(s) {
            case 1:
                System.out.println("***银行账户信息***");
                acc.show();
                break;
            case 2:
                System.out.println("***取款操作***");
                acc.takeMoney();
                break;
            case 3:
                System.out.println("***存款操作***");
                acc.saveMoney(1000);
                break;
            case 4:
                System.exit(0);
                break;
            }
    }
 
}

来自与室友网络查询

总结:本周课程我们学习了String类,String关键字、StringBuffer类,熟悉一些StringBuffer的常用方法,了解了实例化String类对象的两种方式。和室友谈论学习题目,非常开心。