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

    实验二 面向对象程序设计-1

    答案截图

    码云代码链接

    链接1

    实验遇到的问题和解决过程

    • 问题1:在plugins里搜索不到JUnitGenerator V2.0只能搜到Generste Teats
    • 问题1解决方案(软件安装):
      不明觉厉的我在一番瞎点之后……

    标记处不大懂是啥含义

    以下是老师教程的图,圈圈处与我的不同,疑惑。

    后来我搜到一篇博客:
    Intellj idea安装JUnit
    file-Settings-Plugins-Browse repositories-HTTP Proxy Settings将No proxy改成Auto-detect proxy settings
    于是可以搜到JUnitGenerator V2.0

    然后点了下载,但是出现了一个警告框,内含网址,但是还没看懂是啥意思,打算截图再研究,picpick出问题截图丢失。然后手抽多点了几次下载……关掉再打开,!
    我想有uninstall的选项,应该是下好了吧

    • 问题2:

    • 问题2解决方案:添加了

    import week9.MyUtil;
    

    之后

    点击第一个 则会去掉"public"可以运行成功

    点击其他两个都可以运行成功

    均会使(画圈处)MyUtilTest.java变成MyUtilTest

    如果我手动去掉public,MyUtilTest.java名字不会改变,但是依旧可以运行成功。
    问题3:将教程往后翻,按照下图这种方式创建

    然后我的:

    出错的频率真是感人
    问题3解决方案:
    在idea里连按两次Shift出现everything搜索框(之前已经下好了everthing)
    但是,更加感人的是:我没有junit.jar

    我想,可能是已结安好了但安的是4,于是点了“Add 'JUnit4'to classpath”然后就不报错了。

    我当时猜测,按照命名的习惯,可能Junit4是Junit3的升级版。搜到了以下资料:
    Junit 学习之路一 junit3与junit4的区别
    Junit3和Junit4对比及Junit介绍
    看了资料后我觉得Junit4更好用啊,于是坦然接受了Junit4

    此时我点了运行,但是悄悄说一句,它测试的MyUtilTest02Test我还没放任何东西

    然后我只好暗暗把程序放上去,运行之后是这个结果

    问题4:平时:idea里灰色的下划线的含义

    问题4解决方案:根据去除IDEA报黄色/灰色的重复代码的下划波浪线 所说是为了提示开发人员代码有重复

    所以我在圈圈处加了个等号,灰色下划波浪线消失了.

    问题5:@Test是什么意思
    问题5的解决方案:
    @Test注解是JUnit测试的基础,它提供了其他作用

    1.指定将会抛出的异常类型,如果没有抛出异常或者抛出的一场不属于我们指定的类型,就会算是测试失败了。
    2.测试一断代码运行时间。
    java中@Test的作用

    实验二 面向对象程序设计-2

    答案截图

    码云代码链接

    链接2

    实验遇到的问题和解决过程

    • 问题6:实验
      append()

    • 问题6解决方案:
      append() 方法在被选元素的结尾(仍然在内部)插入指定内容。

    • 问题7:实验
      indexOf()

    • 问题7解决方案:
      indexOf() 方法可返回某个指定的字符串值在字符串中首次出现的位置。indexOf() 方法对大小写敏感!
      如果要检索的字符串值没有出现,则该方法返回 -1。
      JavaScript indexOf()方法

    • 问题8:capacity()

    • 问题8解决方案:capacity()目前的最大容量

    • 问题9:
      变红

    • 问题9解决方案:将定义放到方法内。

    • 问题10:

    • 问题10解决方案
      将buffer设为static

    • 问题11:
      验证indexOf()数组编号从几开始

    • 问题11解决方式:
      在测试类中故意测试为从“1”开始

    结果证明从0开始

    实验二 面向对象程序设计-3

    答案截图

    码云代码链接

    链接3

    实验遇到的问题和解决过程

    这部分掌握得不大好(Yue deng yu sha ye bu hui),幸亏有竞予大佬和佳佳大佬的耐心讲解。

    实验二 面向对象程序设计-4

    答案截图

    码云代码链接

    产品代码

    测试代码

    实验遇到的问题和解决过程

    • 问题12:右下角只有一个测试类

    • 问题12解决方案:在测试各方法的时候只加了一个@Test,在各个用例前分别加上就好。

    • 问题13:
      测试用例个别情况赋值不成功

    • 问题13解决方案:Debug
      发现从c1到c3都是-5+2i,也就是赋值不成功,换了数也是这样,不接受我给它赋的值

      实在是不明觉厉,于是去抱了佳佳大佬的大腿
      有以下问题浮出水面:
      1.之前我的测试代码是assertEquals(new Complex(1.0,1.0), Complex.ComplexDiv(new Complex(1.0,2.0)));
      相当于断言括号左部分新构造了一个新Complex,所以不会报错,但这种方式是错的。
      2.之前因为报错,public static Complex ComplexAdd(Complex a)后来去掉了static。
      3.之前的代码我以为只能实现自相加自相乘之类的,为了弥补内心的遗憾,后来还用两个参数做了两数相减,但其实这是我写C的习惯没转过弯。经过大佬的提点才“(@ο@) 哇~”一直前段时间弄方法的时候总觉得怪怪的不得要领,原来我的点在这。

    • 问题14:边缘测试失败!

    • 问题14解决方案:添加红框处代码

    实验二 面向对象程序设计-5

    答案截图

    实验遇到的问题和解决过程

    • 问题15:下载startUML软件两次,360都会提示警告信息……弱弱的我表示不明觉厉,用局部杀毒之后虽然没问题但是还是弱弱地删.掉.了。
    • 问题15解决方案:开始观察得不仔细,没认识到教程的最后,二维码上面的“工具”点开就是下载链接。佳佳大佬告诉我的嘻嘻。

    学习使用startUML软件时搜到的教程链接

    starUML使用教程

    使用StarUML创建类图

    如果想要更加详细地学习UML,老师在班课上发了资源UML for Java Programmers.CN.pdf

    步骤 耗时 百分比
    需求分析 90min 18
    设计 90min 18
    代码实现 180min 36
    测试 20min 4
    分析总结 120min 24
  • 相关阅读:
    A
    B
    A
    A
    B
    C
    有趣的平方和的推导
    一篇写的非常好的匈牙利算法文章
    2014 UESTC Training for Data Structures G
    2014 UESTC Training for Data Structures H
  • 原文地址:https://www.cnblogs.com/GDDFZ/p/6748062.html
Copyright © 2011-2022 走看看