所以,我正在进行一项编码任务,但我陷入僵局。以下是我从教授那里收到的反馈,之后,我将附上我一直在研究的代码,并进一步解释这个问题:
感谢您的联系。它看起来不错!我唯一建议的是在整个代码中添加高级注释,并在MainTeamClass.java程序中的Team对象上测试set((方法,以确保set((mutator方法按预期工作。用测试值调用set((方法,然后调用get((方法查看它是否是相同的值
这是代码的副本:
public class Team
{
private String team;
private int points;
private double average;
public Team()
{
team = " Default";
}
public Team(String startTeam, int startPoints, double startAverage)
{
team = startTeam;
points = startPoints;
average = startAverage;
}
public String getTeam()
{
return team;
}
public int getPoints()
{
return points;
}
public double getAverage()
{
return average;
}
public void setTeam(String newTeam)
{
team = newTeam;
}
public void setPoints(int newPoints)
{
if (newPoints >= 0)
{
points = newPoints;
}
}
public void setAverage(double newAverage)
{
if (newAverage >= 0.0)
{
average = newAverage;
}
}
}
主类:
public class MainTeamClass { public static void main(String[] args)
{
Team sanfran = new Team();
String sanfranTeam = sanfran.getTeam();
int sanfranPoints = sanfran.getPoints();
double sanfranAverage = sanfran.getAverage();
System.out.println(" The team name is:" + sanfran.getTeam()
+ "n The number of points earned equals " + sanfran.getPoints()
+ "n The average season score is:" + sanfran.getAverage());
Team cowboys = new Team("Dallas Cowboys", 36, 43.5);
String cowboysTeam = cowboys.getTeam();
int cowboysPoints = cowboys.getPoints();
double cowboysAverage = cowboys.getAverage();
System.out.println("n The team name is: " + cowboys.getTeam()
+ "n The number of points earned equals " + cowboys.getPoints()
+ "n The average season score is: " + cowboys.getAverage()); } }
基于这段代码,我将如何测试set((方法和get((方法?有人能解释一下如何做到这一点,并提供一个例子吗?这不在本周课堂上的章节中,我在网上搜索了一些帮助,但没有用,所以我希望尽可能多地提供反馈。提前谢谢!
"用测试值调用set((方法,然后调用get((方法查看它是否是相同的值。">:表示传递给set
方法的值与必须从get
方法返回的值相同,类似于以下内容:
Team team = new Team ();
String test = "stringForTest";
team.setTeam(test);
if(!team.getTeam().equals(test)) {
System.out.println("Problem with set/get method!");
}
您可以使用不同的方法,其中一种是assertion
,并使用java -ea <program_name>
运行启用断言
public class MainTeamClass {
public static void main(String[] args) {
Team cowboys = new Team();
cowboys.setTeam("Dallas Cowboys");
String cowboysTeam = cowboys.getTeam();
assert cowboysTeam == "Dallas Cowboys" : "cowboysTeam Not valid";
cowboys.setPoints(36);
int cowboysPoints = cowboys.getPoints();
assert cowboysPoints == 36 : "cowboysPoints Not valid";
cowboys.setAverage(43.5);
double cowboysAverage = cowboys.getAverage();
assert cowboysAverage == 43.5 : "cowboysAverage Not valid";
}
}