@Override
public String getFileContent() {
if(line == null)
return "";
else
return line;
}
// зачем возвращаем "" если строка пустая? почему не вернуть просто line? ведь при объявлении и инициализации String line = ""; она уже инициализирована как ""
Полный код класса:
public static class ReadFileThread extends Thread implements ReadFileInterface {
private String fileName;
private String line = "";
@Override
public void setFileName(String fullFileName) {
this.fileName = fullFileName;
}
@Override
public String getFileContent() {
if(line == null)
return "";
else
return line;
}
@Override
public void run() {
try {
FileReader fr = new FileReader(fileName);
BufferedReader br = new BufferedReader(fr);
String str;
while ((str = br.readLine())!= null) {
line += " " + str;
}
br.close();
} catch (IOException e) {
e.printStackTrace();
}
}
ak
22 уровень
Объясните плз зачет эта проверка?
Обсуждается
Комментарии (4)
- популярные
- новые
- старые
Для того, чтобы оставить комментарий Вы должны авторизоваться
Alek200977
26 июня 2020, 23:59
Метод должен работать при всех возможных случаях входных данных, а не только тех которые в условии задачи.
Могут появиться другие методы меняющие line.
Если вернуть String = null дальше может вылететь NullPointerException
+2
ak
27 июня 2020, 08:42
Благодарю!
0
Дмитрий Кравчук
26 июня 2020, 20:41
эмм, что вас смущает? Где вы взяли код проверки? Сами написали или он был в тз?
0
Дмитрий Кравчук
26 июня 2020, 20:33
Полный код класса:
0