我一直在寻找解决这个问题的方法,无法找到任何我理解的东西。我正在做一个教程,并抄写我老师输入的所有东西,所以我只是在学习......但是当我这样做时,它一直给我这个错误。由于我是新来这个,我不知道究竟发生了什么意思或如何解决它:(不可编译的源代码:错误的Sym错误
public final class DefaultPlayerNameConverter
implements PlayerNameConverter
{
/**
* Must be created through the create method.
*/
private DefaultPlayerNameConverter()
{
}
/**
* Create a DefaultPlayerNameConverter.
*
* @return a DefaultPlayerNameCOnverter.
*/
public static DefaultPlayerNameConverter create()
{
final DefaultPlayerNameConverter converter;
converter = new DefaultPlayerNameConverter();
return (converter);
}
/**
* Convert player name to remove leading/trailing whitespace.
*
* @param name the name to convert.
*
* @return the converted name.
*
* @throws IllegalArgumentException if name is null.
*/
@Override
public String convertName(final String name)
{
final String convertedName;
if(name == null)
{
throw new IllegalArgumentException("name cannot be null");
}
convertedName = name.trim();
return (convertedName);
}
}
public class DefaultPlayerNameConverterTest {
public DefaultPlayerNameConverterTest() {
}
/**
* Test bad arguments to the convertName method.
*/
@Test
public void testConvertBadName()
{
try
{
new DefaultPlayerNameConverter.create().convertName(null);
fail("convertName(null) must throw an "
+ "IllegalArgumentException");
}
catch(final IllegalArgumentException ex)
{
assertEquals("name cannot be null", ex.getMessage());
}
}
/**
* Test good arguments to the convertName method.
*/
@Test
public void testConvertGoodName()
{
checkConvertName("", "");
checkConvertName("\t", "");
checkConvertName("\n", "");
checkConvertName("\r", "");
checkConvertName("\r\n", "");
checkConvertName("\r\n\t", "");
checkConvertName("X", "X");
checkConvertName(" X", "X");
checkConvertName("X ", "X");
checkConvertName(" X ", "X");
checkConvertName("X Y", "X Y");
checkConvertName("Hello\tworld", "Hello\tworld");
}
/**
* Check that the name conversion works.
*
* @param originalName the name to convert.
* @param expectedName what the name should be converted to.
*/
private void checkConvertName(final String originalName,
final String expectedName)
{
final PlayerNameConverter converter;
final String convertedName;
converter = new DefaultPlayerNameConverter.create();
convertedName = converter.convertName(originalName);
assertEquals(expectedName, convertedName);
}
}
错误不断显示在我的测试类,当我添加了“ DefaultPlayerNameConverter创造”的方法。我不知道如何解决它。我只是把什么教程告诉我做。
这是PlayerNameConverter接口...
public interface PlayerNameConverter {
/**
* Convert the supplied name.
*
* @param name the name to convert.
*
* @return the converted name.
*/
String convertName(String name);
}
什么是错误,精确?完全复制它。 –
我的赌注是转换器和converterName的最终关键字。对不起,在手机上没有IDE。 – stryba
你还有PlayerNameConverter接口吗? – berry120