第四周课程总结&实验报告
Posted importantmagic
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了第四周课程总结&实验报告相关的知识,希望对你有一定的参考价值。
实验二 Java简单类与对象
实验目的
掌握类的定义,熟悉属性、构造函数、方法的作用,掌握用类作为类型声明变量和方法返回值;
理解类和对象的区别,掌握构造函数的使用,熟悉通过对象名引用实例的方法和属性;
理解static修饰付对类、类成员变量及类方法的影响。
实验内容
1、写一个名为Rectangle的类表示矩形。其属性包括宽width、高height和颜色color,width和height都是double型的,而color则是String类型的。要求该类具有:
(1) 使用构造函数完成各属性的初始赋值
(2) 使用get…()和set…()的形式完成属性的访问及修改
(3) 提供计算面积的getArea()方法和计算周长的getLength()方法
实验代码:
package 实验室;
public class Rectangle //定义矩形类
double width=5,hight=7; // 矩形宽度、高度
String color = "red"; //矩形颜色
double area; //矩形面积
double length; //矩形周长
public Rectangle(double width,double hight,String color) //矩形类属性初始化
this.setWidth(width); //设置宽度
this.setHight(hight); //设置高度
this.setColor(color); //设置颜色
this.setArea(width,hight); // 设置矩形面积
this.setLength(width,hight); //设置矩形周长
public double getWidth() //用get()修改取得矩形宽度、长度、颜色、面积、周长等
return width;
public void setWidth(double width)
this.width = width;
public double getHight()
return hight;
public void setHight(double hight)
this.hight = hight;
public String getColor()
return color;
public void setColor(String color)
this.color = color;
public double getArea()
return area;
public void setArea(double width,double hight)
this.area = width*hight;
public double getLength()
return length;
public void setLength(double width,double hight)
this.length = 2*(width+length);
public class Rectangle //测试以上代码
public static void main(String[] args)
Rectangle rec = null; //声明对象
Rec = new Rectangle("area","length","color");
System.out.println("面积="+Rec.getArea()+",周长="+Rec.getLength()+",颜色:"+Rec.getColor()); //实例化Rectangle对象,赋值输出
错误提示:
原因是该矩形类已经被定义使用。(由于才疏学浅,还在找原因ing)
2、银行的账户记录Account有账户的唯一性标识(11个长度的字符和数字的组合),用户的姓名,开户日期,账户密码(六位的数字,可以用0开头),当前的余额。银行规定新开一个账户时,银行方面提供一个标识符、账户初始密码123456,客户提供姓名,开户时客户可以直接存入一笔初始账户金额,不提供时初始余额为0。定义该类,并要求该类提供如下方法:存款、取款、变更密码、可以分别查询账户的标识、姓名、开户日期、当前余额等信息。
实验代码:(还在看书百度思考ing)
本周课程总结:
我学到了什么:
本周我们继续学习面向对象编程,着重学习了“string”类中的常用方法:
String类的实例化:直接赋值和 “new”一个对象赋值(构造方法)。
区别:直接赋值 只开辟一块堆内存空间,并自动保存在对象池中以供下次重复使用;构造方法会开辟两块堆内存空间,其中有一块空间成为垃圾,并不会自动入池,可以通过使用intern()方法手工入池。
EP:学习了“ 包” 的概念及其使用:包的目的在于实现程序的分割保存。
PS:
我学习不足在哪:
对eclipse的部分功能还不熟悉,在新建一个新class,很容易出错导致编译错误,对类的定义没有好好掌握;
代码很多看得懂,但自己来写却难以运行,或者运行错误;(很多时候都找不到原因,tnl)
对于算法还是不能很好的理解和应用,有些算法非常巧妙,就是想不到(还是太gag了)
对于构造法还是不太熟悉;
我学习需改进在哪:
写出简洁易懂的代码;
自己能够独立完成算法的设计;
每天写点代码,写个程序.....。
以上是关于第四周课程总结&实验报告的主要内容,如果未能解决你的问题,请参考以下文章