• 第四周课程总结&试验报告(二)


    一.写一个名为Rectangle的类表示矩形。其属性包括宽width、高height和颜色color,width和height都是double型的,而color则是String类型的。

    要求该类具有:

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

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

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

    实验代码

    class Rectangle             //定义矩形类名
    {
        private double width;     //矩形宽度
        private double height;    //矩形高度
        private String color;     //矩形颜色
        
    class Rectangle             //定义矩形类名
    {
        private double width;     //矩形宽度
        private double height;    //矩形高度
        private String color;     //矩形颜色
        
        public Rectangle()     //定义无参构造
        {     
        }
    //定义有三个参数的构造方法,为类中的属性初始化
    public Rectangle(double width,double height,String color)
    {
        this.setWidth(width);    //设置宽度
        this.setHeight(height);  //设置高度
        this.setColor(color);    //设置颜色
    }
       public void setWidth(double s)  //设置宽度
       {
           width = s;       
       }
       public void setheight(double n)   //设置长度
       {
           height = n;
       }
       public void setcolor(String y)   //设置颜色
       {
           color = y;
       }
       public double getWidth()    //取得编号
       {
           return width;
       }
       public double getHeight()   //取得高度
       {
           return height;
       }
       public String getColor()    //取得颜色
       {
           return color;
       }
       public double getArea()    //计算面积
       {
           return  height*width;
       }
       public double getLength()   //计算周长
       {
           return (height+width)*2;
       }
    }

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

    实验代码

    import java.util.Date;
    import java.util Scanner;
    public class bank
    {
        private String id;
        private String name;
        private double createtime;
        private String password;
        private int money;
        
        public amount(String id,String name,int money)
        {
            this.setID(id);
            this.setName(name);
            this.setMoney(money);
            this.setPassword="123456";
            this.setCreatetime = new Date();
        }
        public int deposit()
        {
            return money+amount;
        }
        public int withdraw()
        {
            return amount-money;
        }
        public void setCreatetime(int s)
        {
            createtime = s;
        }
        public int getcreatetime()
        {
            return createtime;
        }
        public void changepassword()
        {
          Scanner x = new Scanner(System.in);
          System.out.println("输入新的密码:");
          String password = x.nextString();
          this.password = new password;
        }
        public static void main(String [] args)
        {
            Bank n = new bank("id","name","createtime");
            System.out.println("账号:"+n.getID());
            System.out.println("姓名:"+n.getName());
            System.out.println("开户日期:"+n.getCreatetime());
            System.out.println("余额:"+n.getAmont());
        }
    }

    注:以上代码,仅代表个人思路。

                         

    实验总结:

    一.当我们创建一个类后,这一类中就会有多个对象,对象在可以被使用之前必须要被正确地实例化。

    实例化作用:

    1.检查类是否加载

    2.分配父类型空间, 按照属性分配空间, 属性自动初始化为"零"

    这两个作用是我所知道的,当然我说的可能不全面,希望以后能补充完整

    二.为什么私有属性要使用set跟get方法设置和访问?

    将数据与行为进行分离,体现了对象的封装性,封装就是将属性私有化,提供公有的方法访问私有的属性。我个人理解就是每个人都有特定的名字跟特定的性格,不能随意修改,只有通过特定的方法才能修改,所以我们将成员变量声明为private,再通过 public的方法来对这个变量进行访问

    三.

    我放过一个经常的错误就是,前面定义类属性的类型的时候一定要保证后面调用这个类的属性,类型一定要保证跟前面保证一致

    举个例子:

    private double math;

    public float getMath()

    {

       return math;

    }

    这样是不行的,前面用double,后面用float,这种数据类型的转换是不被认可的。

  • 相关阅读:
    使用Spring AOP实现MySQL数据库读写分离案例分析
    mysql的备份(文档的内容小编都已经验证过了)
    【信息化】MySQL数据库简介
    基于MySQL的分布式数据库TDSQL十年锻造经验分享
    MySQL数据库丢失数据场景分析
    微博的MySQL数据库优化实践经验
    数据库MySQL调优实战经验总结
    让数据库跑的更快的7个MySQL优化建议
    一文看懂 MySQL 分区和分表,提高表增删改查效率
    三分钟掌握SQL Server迁移Mongodb
  • 原文地址:https://www.cnblogs.com/tb-0706/p/11538208.html
Copyright © 2020-2023  润新知