所以,我在做一个编码作业,我陷入了僵局。这是教授给我的反馈,之后我会附上我一直在做的代码,进一步解释这个问题。
谢谢你的帮助 看起来不错! 我唯一的建议是在你的代码中加入高级注释,并在你的MainTeamClass.java程序中的Team对象上测试set()方法,以确保set()突变器方法按照预期工作。用一个测试值调用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;
}
}
}
还有Main类
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";
}
}