博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
第四周课程总结&实验报告
阅读量:5009 次
发布时间:2019-06-12

本文共 5417 字,大约阅读时间需要 18 分钟。

实验二 Java简单类与对象

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

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

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

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

实验代码:

package 实验2;public class Rectangle {    public static void main(String args[]) {        Rectangle rec=new Rectangle();        rec.setWidth(3);        rec.setHeight(4);        rec.setColor("红色");        rec.getArea();        rec.getLength();        System.out.println("长:"+rec.getWidth()+"\n高:"+rec.getHeight()+"\n颜色:"+rec.getColor());    }        double width,height;    String color="red";            public double getHeight() {        return height;                    }    public double getWidth() {        return width;    }    public String getColor() {        return color;    }    public void setHeight(double height) {        this.height = height;            }    public void setWidth(double width) {        this.width = width;    }    public void setColor(String color) {        this.color = color;    }        public void getArea() {        double area=0;        area=this.height*this.width;        System.out.println("面积为"+area);    }    public void getLength() {        double length=0;        length=(this.height+this.width)*2;        System.out.println("周长为"+length);    }}

实验结果:

 

 

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

 实验代码:

package 实验2;import java.util.Scanner;public class Banksystem{    private String name,date="2019.9.20";    private int key=123456,money=0;    private String ccount="Barcelona";        public String getName() {        return name;    }    public void setName(String name) {        this.name = name;    }    public String getDate() {        return date;    }    public void setDate(String date) {        this.date = date;    }    public int getKey() {        return key;    }    public void setCipher(int key) {        this.key = key;    }    public int getMoney() {        return money;    }    public void setMoney(int money) {        this.money = money;    }    public String getCcount() {        return ccount;    }    public void setCcount(String ccount) {        this.ccount = ccount;    }    public void username(){                           System.out.print("用户名称:");        Scanner username = new Scanner(System.in);        String name = username.nextLine();        setName(name);    }    public void ChangePWD(){                            System.out.print("请输入您要更改的密码:");        Scanner userkey = new Scanner(System.in);        int key = userkey.nextInt();        setCipher(key);    }    public void all(){                                            System.out.print("用户名:"+name+"\n开户日期:"+date+"\n账号:"+ccount+"\n密码:"+key+"\n余额:"+money+"\n");    }    public void Depositsandwithdrawals(){        System.out.print("存款:1\n"+"取款:0\n");        System.out.print("请选择:");        Scanner j = new Scanner(System.in);        int i = j.nextInt();        if(i==0) {        System.out.print("取款数:");        Scanner usermoney = new Scanner(System.in);        int money = usermoney.nextInt();        money=this.money-money;        System.out.print("操作成功!当前余额:"+money);        setMoney(money);        }        else {        System.out.print("存款数:");        Scanner usermoney = new Scanner(System.in);        int money = usermoney.nextInt();        money=this.money+money;        System.out.print("操作成功!当前余额:"+money);        setMoney(money);        }    }    public static void main(String[] args) {        System.out.print(" Welcome\n");        System.out.print("进入系统请按:1\n");        System.out.print("请输入你要操作的序号:");        Scanner j = new Scanner(System.in);        int J = j.nextInt();        int I=0;        Banksystem user = new Banksystem();        for(int k=1;k>0;) {            if(J==1||I==1) {                System.out.print("开通用户:1\n"+"更改密码:2\n"+"查询信息:3\n"+"存款取款:4\n");                System.out.print("请输入你要操作的序号:");                Scanner b = new Scanner(System.in);                int B = b.nextInt();                if(B==1) {                    user.username();                }else if(B==2){                    user.ChangePWD();                }else if(B==3){                    user.all();                }else if(B==4){                    user.Depositsandwithdrawals();                }                System.out.print("返回主页:1\n"+"退出系统:0\n");                System.out.print("请输入你要操作的序号:");                Scanner i = new Scanner(System.in);                I = i.nextInt();                J=0;            }else{                break;        }      }        System.out.print("已安全退出,感谢使用!");    }   }

实验结果:

 

 

 

 

 

 

 

学习总结:

这次的实验主要是让我们掌握类的定义,掌握用类作为类型声明变量和方法返回值,理解类和对象的区别,其中,构造方法的名称必须与类名称一致;构造方法的声明处不能有任何返回值类型的声明;不能在构造方法中使用return返回一个值。还有就是熟悉属性、构造函数、方法的作用;掌握构造函数的使用,熟悉通过对象名引用实例的方法和属性;理解static修饰付对类、类成员变量及类方法的影响。在上课时,老师讲的课很有激情,跟着老师来的话还是很好理解的,所以听老师说的那些类的用法倒是蛮轻松的,下课后用起来却是蛮费劲,感觉要消化的东西有点多,代码还是要多打打。

第一个题目难度不大,老师上课的时候基本就讲了,所以做起来也没什么问题。

第二题的话难度相比于第一题要大点,因为是做一个类似于银行账户的东西,当我们进行一步操作后,它里面储存的东西就会改变,我们需要将改变的东西保存下来,这个点对之前的我们来说是有难度的,还好老师上课讲了get和set,加上第一题写了类似的题,还是顺利解决了,但是目前的这个账户还比较低级,比如密码开头不能为0,账号那里也没有做什么操作等等,这些问题还需要进一步解决,完善。生命在于创造,还要努力!

 

转载于:https://www.cnblogs.com/Jay-h/p/11556076.html

你可能感兴趣的文章
开发一个12306网站要多少钱?技术分析12306合格还是不合格
查看>>
Selenium 入门到精通系列:六
查看>>
HTTP与TCP的区别和联系
查看>>
android 实现2张图片层叠效果
查看>>
我个人所有的独立博客wordpress都被挂马
查看>>
html5——动画案例(时钟)
查看>>
调用Android系统“应用程序信息(Application Info)”界面
查看>>
ios中用drawRect方法绘图的时候设置颜色
查看>>
数据库中的外键和主键理解
查看>>
个人博客03
查看>>
Expression<Func<T,TResult>>和Func<T,TResult>
查看>>
文件缓存
查看>>
关于C语言中return的一些总结
查看>>
Codeforces Round #278 (Div. 2)
查看>>
51. N-Queens
查看>>
Linux 命令 - 文件搜索命令 locate
查看>>
[Grunt] grunt.template
查看>>
Ubuntu最小化桌面快捷键Super+D不生效解决
查看>>
Cookie&Session会话跟踪技术
查看>>
UNIX环境高级编程 第17章 高级进程间通信
查看>>