首页 > 解决方案 > 如何在Java中存储来自新实例的变量

问题描述

我不确定这是否是正确的标题,但是......我得到了一个带有测试用例的程序,例如:

private void Test(){
  CompareString string1 = new CompareString("String here");
  CompareString string2 = new CompareString("String there");
  assertEquals(expected, string1.compareTo(string2));
}

(我无法更改测试)

和一堂课

public class CompareString{

  CompareString(String stringIn){  //your code here  }

public boolean compareTo(CompareString aString){
   //your code here
   return true;
  }
}

如何分别存储每个字符串以进行比较(以及此处未描述的进一步工作)

通过调用“新”实例的测试,我尝试存储和创建的任何变量都会被重置。我尝试使用,this.stringVariable = stringIn 但这显然只会存储最后一个字符串实例(在这种情况下为“字符串”)。如何单独存储字符串?

标签: javaoopinstance

解决方案


我的理解是,您有一个无法修改的测试,并且该测试使用了一个已部分实现的类。您通过询问“如何分别存储每个字符串......”来询问实施。(提示:这称为封装,但请进一步阅读)

我想为您指出一个很好的资源Java™ 教程

在那里,您将了解对象、数据封装和构造函数

你的任务是实现一个构造函数和方法。在您了解了我概述的要点后,您将能够解决问题。我们可以帮助您编写代码,但您不会自己学习如何编写代码。


推荐阅读