实验三 面向对象程序设计

发布时间:2022-07-03 发布网站:脚本宝典
脚本宝典收集整理的这篇文章主要介绍了实验三 面向对象程序设计脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。

# 20202315 2021-2022-1 《数据结构与面向对象程序设计》实验报告课程:《程序设计与数据结构》班级: 2023姓名:王梦欣学号:20202315实验教师:王志强实验日期:2021年9月30日必修/选修: 必修

 

参考《实验二 Java面向对象程序设计》:http://www.cnblogs.COM/rocedu/p/6736847.htML1.实验内容

下载安装并使用IDEA,完成下面实验(https://www.cnbLOGs.com/rocedu/p/6371315.html)。

1. 初步掌握单元测试和TDD2. 理解并掌握面向对象三要素:封装、继承、多态3. 初步掌握UML建模4. 完成蓝墨上 (1)-(5)实验。

 

2.实验过程与结果

2.1 单元测试和TDD的掌握

第一个提交点:完成单元测试的学习

产品代码及测试代码

public class MyUtil {    public static String PErcentage2fivegrade(int grade){        if (grade<0)            return "错误";        //如果成绩小于60,转成不及格        else if (grade<60)            return "不及格";        //如果成绩在6070之间,转成及格        else if (grade<70)            return "及格";        //如果成绩在7080之间,转成中等        else if (grade<80)            return "中等";        //如果成绩在8090之间,转成良好        else if (grade<90)            return "良好";        //如果成绩在90100之间,转成优秀        else if (grade<=100)            return "优秀";        //如果成绩大于100,转成错误"        else            return "错误";    }}
public class MyUtiltest {    @Test    public void testNormal() {        Assert.assertEquals("不及格", MyUtil.percentage2fivegrade(55));        Assert.assertEquals("及格", MyUtil.percentage2fivegrade(65));        Assert.assertEquals("中等", MyUtil.percentage2fivegrade(75));        Assert.assertEquals("良好", MyUtil.percentage2fivegrade(85));        Assert.assertEquals("优秀", MyUtil.percentage2fivegrade(95));    }    @Test    public void testException(){        Assert.assertEquals("错误", MyUtil.percentage2fivegrade(-55));        Assert.assertEquals("不及格", MyUtil.percentage2fivegrade(55));    }    @Test    public void testBoundary(){        Assert.assertEquals("不及格", MyUtil.percentage2fivegrade(0));        Assert.assertEquals("及格", MyUtil.percentage2fivegrade(60));        Assert.assertEquals("中等", MyUtil.percentage2fivegrade(70));        Assert.assertEquals("良好", MyUtil.percentage2fivegrade(80));        Assert.assertEquals("优秀", MyUtil.percentage2fivegrade(90));        Assert.assertEquals("优秀", MyUtil.percentage2fivegrade(100));    }}

运行结果:正常情况、错误情况及边界情况

实验三 面向对象程序设计

 

 

实验三 面向对象程序设计

 

 

实验三 面向对象程序设计

 

 第二个提交点:

TDD的一般步骤如下:

  • 明确当前要完成的功能,记录成一个测试列表
  • 快速完成编写针对此功能的测试用例
  • 测试代码编译不通过(没产品代码呢)
  • 编写产品代码
  • 测试通过
  • 对代码进行重构,并保证测试通过(重构下次实验练习)
  • 循环完成所有功能的开发

以 TDD的方式研究学习StringBuffer

import junIT.framework.TestCase;
import static org.junit.Assert.*;
import org.junit.Test;
public class StringBufferDemoTest extends TestCase {
    StringBuffer a = new StringBuffer("stringbuffer");//测试12个字符(<=16)
    StringBuffer b = new StringBuffer("stringbufferstringbuffer");//测试24个字符(>16&&(=34)
    StringBuffer c = new StringBuffer("stringbufferstringbufferstringbuffer");//测试36个字符(>=34)
    @Test
    public void testcharAt() throws Exception {
        assertEquals('s', a.charAt(0));
        assertEquals('g', a.charAt(5));
        assertEquals('r', a.charAt(11));
    }
    @Test
    public void testcapacity() throws Exception {
        assertEquals(28, a.capacity());
        assertEquals(40, b.capacity());
        assertEquals(52, c.capacity());
    }
    @Test
    public void testlength() throws Exception {
        assertEquals(12, a.length());
        assertEquals(24, b.length());
        assertEquals(36, c.length());
    }
    @Test
    public void testindexOf() throws Exception {
        assertEquals(0, a.indexOf("str"));
        assertEquals(5, b.indexOf("gbu"));
        assertEquals(8, c.indexOf("ff"));
    }
}

public class StringBufferDemo {
	public static void main(String [] args){
            StringBuffer buffer = new StringBuffer(20);
            buffer.append('S');
            buffer.append("tringBuffer");
            //		System.out.PRintln(buffer.charAt(1));
            System.out.println(buffer.capacity());
            //		System.out.println(buffer.indexOf("tring12345"));
            System.out.println("buffer = " + buffer.toString());
            System.out.println(buffer.length());
    }
}

 2. 2理解并掌握面向对象三要素:封装、继承、多态

 

 

 

 

 

 

 

 

 

 

脚本宝典总结

以上是脚本宝典为你收集整理的实验三 面向对象程序设计全部内容,希望文章能够帮你解决实验三 面向对象程序设计所遇到的问题。

如果觉得脚本宝典网站内容还不错,欢迎将脚本宝典推荐好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。