zoukankan      html  css  js  c++  java
  • 2017-2018-2 20165325 实验二《Java面向对象程序设计》实验报告

    一、面向对象程序设计-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

    五、面向对象程序设计-5

    1、检查点要求

    使用WhiteStarUML对实验二中的代码进行建模,发类图的截图,加上学号水印。
    参考http://www.cnblogs.com/rocedu/p/6736847.html

    类图中只少两个类。

    2、截图

    六、实验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)

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

  • 相关阅读:
    前端
    小程序开发
    mpvue开发小程序
    (33)Vue购物车
    Vue的使用你学会了吗?
    (32)Vue模板语法
    (31)Vue安装
    (3)Angular的开发
    (2)Angular的开发
    (1)Angular的开发
  • 原文地址:https://www.cnblogs.com/maxeysblog/p/8833954.html
Copyright © 2011-2022 走看看