码迷,mamicode.com
首页 > 其他好文 > 详细

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

时间:2018-04-14 21:00:57      阅读:216      评论:0      收藏:0      [点我收藏+]

标签:自己   override   程序设计   www   实验报告   博客   ref   构造函数   bool   

技术分享图片

一、面向对象程序设计-1

1、检查点要求

参考 http://www.cnblogs.com/rocedu/p/6371315.html#SECUNITTEST

参考 http://www.cnblogs.com/rocedu/p/6736847.html

提交最后三个测试用例都通过的截图,截图上要有画图加水印,输入自己的学号。

2、截图

技术分享图片

3、相关代码的码云链接

MyUtil.java

MyUtilTest.java

二、面向对象程序设计-2

1、检查点要求

参考 积极主动敲代码,使用JUnit学习Java (http://www.cnblogs.com/rocedu/p/4837092.html)

参考http://www.cnblogs.com/rocedu/p/6736847.html

以 TDD的方式研究学习StringBuffer,提交你的单元测试用例和测试通过的截图,截图要加上学号水印。

2、截图

技术分享图片

技术分享图片

3、相关代码的码云链接

StringBufferDemo.java

StringBufferDemoTest.java

三、面向对象程序设计-3

1、检查点要求

参考http://www.cnblogs.com/rocedu/p/6736847.html

对设计模式示例进行扩充,体会OCP原则和DIP原则的应用,初步理解设计模式

用自己的学号%6进行取余运算,根据结果进行代码扩充:

0: 让系统支持Byte类,并在MyDoc类中添加测试代码表明添加正确,提交测试代码和运行结的截图,加上学号水印

1: 让系统支持Short类,并在MyDoc类中添加测试代码表明添加正确,提交测试代码和运行结的截图,加上学号水印

2: 让系统支持Boolean类,并在MyDoc类中添加测试代码表明添加正确,提交测试代码和运行结的截图,加上学号水印

3: 让系统支持Long类,并在MyDoc类中添加测试代码表明添加正确,提交测试代码和运行结的截图,加上学号水印

4: 让系统支持Float类,并在MyDoc类中添加测试代码表明添加正确,提交测试代码和运行结的截图,加上学号水印

5: 让系统支持Double类,并在MyDoc类中添加测试代码表明添加正确,提交测试代码和运行结的截图,加上学号水印

2、截图

我做的是:系统支持Short类,截图如图所示;

技术分享图片

技术分享图片

3、相关代码的码云链接

MyDoc.java

四、面向对象程序设计-4

1、检查点要求

提交:单元测试代码和运行成功截图及码云上代码链接,截图要加上学号水印

参考http://www.cnblogs.com/rocedu/p/6736847.html

任务:以TDD的方式开发一个复数类Complex,要求如下:

// 定义属性并生成getter,setter double RealPart; double ImagePart; // 定义构造函数 public Complex() public Complex(double R,double I)

//Override Object public boolean equals(Object obj) public String toString()

// 定义公有方法:加减乘除 Complex ComplexAdd(Complex a) Complex ComplexSub(Complex a) Complex ComplexMulti(Complex a) Complex ComplexDiv(Complex a)

2、截图

技术分享图片

技术分享图片

技术分享图片

3、相关代码的码云链接

Complex.java

ComplexTest.java

五、实验PSP

技术分享图片


遇到的问题

1、关于StringBuffer()
StringBuffer a = new StringBuffer("StringBuffer");
StringBuffer a = new StringBuffer();
a.append("StringBuffer");

在实验中,我发现这两个写法是有区别的。前者是将"StringBuffer"写入a之后再分配16个字符长度的缓存;后者直接在缓存区里面写入(当缓冲区写完了就会继续分配)。

两者最直接的体现就是a.capacity()的数值不同,前者为28,后者只有16(刚好比前面多出16个字符长,即缓存区的长度)。

2、关于老师的博客

技术分享图片

图中似乎有一个错误,运行结果应该是

16
buffer = StringBuffer
12

或者将第5行改为buffer.append("tringBuffer12345");运行结果应该是

34
buffer = StringBuffer12345
17
3、关于复数除法运算

参考链接: 复数类及各种操作(Java)

里面对复数除法运算的处理值得学习,即先求一个数的倒,再转化为乘法运算。

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

标签:自己   override   程序设计   www   实验报告   博客   ref   构造函数   bool   

原文地址:https://www.cnblogs.com/maxeysblog/p/8833954.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!