20145113 实验二 Java面向对象程序设计

实验内容

  • 初步掌握单元测试和TDD
  • 理解并掌握面向对象三要素:封装、继承、多态
  • 初步掌握UML建模
  • 熟悉S.O.L.I.D原则
  • 了解设计模式
  • ###1.初步掌握单元测试和TDD
    #####进行复数类的编写,实现了加减乘除功能。

    刚开始的时候,传入的参数是复数的实部与虚部,然后直接打印出加减乘除后的结果,没有返回值。但是在要进行单元测试的时候发现如果没有返回值的话就没法检验预期与实际的结果是否相同。于是建了一个复数类,存放复数的实部与虚部,然后进行加减乘除的时候

    public static Complex add(Complex com1, Complex com2)

    传入的是复数的实例,返回的也是复数实例。然后对equals方法进行改写

        @Override
    public boolean equals(Object obj) { Complex c = (Complex)obj;
    if((Math.abs(c.getReal()-this.getReal())<0.00001)&&(Math.abs(c.getUnreal()-this.getUnreal())<=0.0001))
    return true;
    else
    return false;
    }

    然后根据教程使用单元测试,右击->Generate->JUnit Test

    @Test
    public void testAdd() throws Exception {
    Assert.assertEquals(new Complex(0, 2), Oporate.add(new Complex(0, 1), new Complex(1, 1)));
    }

    如果期望与实际不相符的时候,会具体指出是哪个地方不相符

    但是存在问题是不能直观看到期望值与实际值。于是进行对toString()方法进行改写。

     @Override
    public String toString() {
    return "[" +getReal() + (getUnreal()>0?"+":"") + getUnreal()+"]";
    }

    2.初步掌握UML建模

    并生成java代码,但是由于刚开始用UML生成的java代码就显得很简陋了,还需不断熟悉。

    3.熟悉S.O.L.I.D原则

    1.Single Responsibility Principle (SRP) – 职责单一原则

    2.Open/Closed Principle (OCP) – 开闭原则

    3.Liskov substitution principle (LSP) – 里氏代换原则

    4.Interface Segregation Principle (ISP) – 接口隔离原则

    5.Dependency Inversion Principle (DIP) – 依赖倒置原则

    20145113 实验二 Java面向对象程序设计的更多相关文章

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

      实验二 Java面向对象程序设计 实验内容 1. 初步掌握单元测试和TDD 2. 理解并掌握面向对象三要素:封装.继承.多态 3. 初步掌握UML建模 4. 熟悉S.O.L.I.D原则 5. 了解设计 ...

    2. 20145213《Java程序设计》实验二Java面向对象程序设计实验报告

      20145213<Java程序设计>实验二Java面向对象程序设计实验报告 实验内容 初步掌握单元测试和TDD 理解并掌握面向对象三要素:封装,继承,多态 初步掌握UML建模 熟悉S.O. ...

    3. 20145206《Java程序设计》实验二Java面向对象程序设计实验报告

      20145206<Java程序设计>实验二Java面向对象程序设计实验报告 实验内容 初步掌握单元测试和TDD 理解并掌握面向对象三要素:封装.继承.多态 初步掌握UML建模 熟悉S.O. ...

    4. 20145308刘昊阳 《Java程序设计》实验二 Java面向对象程序设计 实验报告

      20145308刘昊阳 <Java程序设计>实验二 Java面向对象程序设计 实验报告 实验名称 Java面向对象程序设计 实验内容 初步掌握单元测试和TDD 理解并掌握面相对象三要素:封 ...

    5. JAVA课程实验报告 实验二 Java面向对象程序设计

      北京电子科技学院(BESTI) 实     验    报     告 课程:Java程序设计  班级:1353  姓名:韩玉琪  学号:20135317 成绩:             指导教师:娄嘉 ...

    6. 20145225唐振远 实验二 "Java面向对象程序设计"

      20145225<Java程序设计> 实验二 Java面向对象程序设计 实验报告 实验内容 初步掌握单元测试和TDD 理解并掌握面向对象三要素:封装.继承.多态 初步掌握UML建模 熟悉S ...

    7. 20145208 实验二 Java面向对象程序设计

      20145208 实验二 Java面向对象程序设计 实验内容 初步掌握单元测试和TDD 理解并掌握面向对象三要素:封装.继承.多态 初步掌握UML建模 熟悉S.O.L.I.D原则 了解设计模式 实验步 ...

    8. 20162311 实验二 Java面向对象程序设计 实验报告

      实验二 Java面向对象程序设计 实验内容 1. 初步掌握单元测试和TDD 2. 理解并掌握面向对象三要素:封装.继承.多态 3. 初步掌握UML建模 4. 熟悉S.O.L.I.D原则 5. 了解设计 ...

    9. 20162317袁逸灏 第八周实验报告:实验二 Java面向对象程序设计

      20162317袁逸灏 第八周实验报告:实验二 Java面向对象程序设计 实验内容 初步掌握单元测试和TDD 理解并掌握面向对象三要素:封装.继承.多态 初步掌握UML建模 熟悉S.O.L.I.D原则 ...

    随机推荐

    1. 在代码中调用gdb

      转载:http://blog.csdn.net/hanchaoman/article/details/5583457 在SIGSEGV的handler中调用gdb, 命令gdb [exec file] ...

    2. sizeof既是关键字,又是运算符(操作符),但不是函数!

      sizeof是关键字吗 sizeof是关键字,这一点毋庸置疑.你不能将sizeof定义为任何标识符.查看C语言标准文档里的说明: sizeof是运算符(操作符)吗 C语言中,sizeof是运算符(操作 ...

    3. 转:C语言 可变参数

      C语言 可变参数 堆栈一般是怎么压栈处理的 /* * stack space: * *        参数3   |    up *        参数2   | *        参数1   v   ...

    4. exec函数族实例解析

      exec函数族实例解析 fork()函数通过系统调用创建一个与原来进程(父进程)几乎完全相同的进程(子进程是父进程的副本,它将获得父进程数据空间.堆.栈等资源的副本.注意,子进程持有的是上述存储空间的 ...

    5. Mybatis 批量insert

      @Override public int insertHouseTypeScene(int htid, String name, String icon,int sort, List<House ...

    6. MVC4中的Display Mode简介

      本文地址:http://www.cnblogs.com/egger/p/3400076.html  欢迎转载 ,请保留此链接๑•́ ₃•̀๑! 今天学习MVC4时,看到一个不错的特性"vie ...

    7. 整理一下以前的Html+css3复习笔记

      一.html5新特性  常用语义标签:nav footer header section mark  功能标签 video audio iframe canvas(画布和绘图功能)  input新ty ...

    8. python中main()函数写法

      顶顶大名的Guido van Rossum(Python之父)推荐的main写法: #!/usr/bin/python import sys import getopt class Usage(Exc ...

    9. UNIX 逐字符输入

      //终端驱动处于普通胡一次一字符模式 system("stty raw"); //终端驱动处于普通胡一次一行模式 system("stty cooked");

    10. Windows Server 2003从入门到精通之Windows Media Server流媒体服务器架建[转]

      今天我们来做一个windows media server流媒体格式文件的流媒体服务器. 现在市面上能够买到的一些电影文件有 rm格式和wmv格式.还有一些是DivX技术的avi格式,要想让你的服务器对 ...