package com.javarush.task.task17.task1707;
class Imf {
private static Imf imf; //переная типа IMF
public static Imf getFund() {
//add your code here - добавь код тут
synchronized (Imf.class) {
if (imf != null) {
imf = new Imf();
return imf;
}
}
return imf;
}
private Imf() {
}
}
-----------------------------------------------------
не понимаю почему имя внешнего типа файла не совпадают?JavaSutra
35 уровень
Ошибка в файле com/javarush/task/task17/task1707/IMF.java в строке 4 The name of the outer type and the file do not match.
Решен
Комментарии (8)
- популярные
- новые
- старые
Для того, чтобы оставить комментарий Вы должны авторизоваться
Сергеев ВикторMaster
9 июня 2018, 21:35
не понимаю почему имя внешнего типа файла не совпадают?
в windows регистр не важен, в linux важен
0
JavaSutra
9 июня 2018, 21:58
Вы имеете виду что в линукс нельзя чтоб имя файла было всё с заглавной буквы?
0
Сергеев ВикторMaster
9 июня 2018, 22:56решение
я говорю о том, что в линуксе имя вашего класса может не совпадать с именем файла (это не точно, у самого винда)
Просто соблюдайте регистр в именах файлов-классов и проблем не будет
+2
JavaSutra
10 июня 2018, 08:49
спасибо
0
Alexandr Stolyarenko
9 июня 2018, 18:23
По поводу логики есть проблема - вы пересоздаете объект в случае если он существует и не создаете ничего в противном.
Теперь по поводу самого вопроса - это аббревиатура и все буквы должны быть заглавными
+2
JavaSutra
9 июня 2018, 20:25
но с такой логикой прошло валидацию (
по условию я должен всегда возвращать один и тот же объект
значит надо? если объект равен null тогда возвращаем новый объект иначе возвращаем объект который null?
а по поводу второго вопроса если все с большой буквы то выбивает другую ошибку что в имени класса не желательно чтоб все буквы были с заглавной.
0
Alexandr Stolyarenko
9 июня 2018, 22:00решение
В задании все буквы заглавные(по комментарию видно) - загрузите его и не меняйте.
по поводу логической ошибки - если объекта нет, создаем... не наоборот.
+2
JavaSutra
10 июня 2018, 08:46
спасибо
0