коллеги, подскажите почему все классы должны быть static?
Владимир Шмаков
41 уровень
коллеги, подскажите почему все классы должны быть static?
Обсуждается
Комментарии (6)
- популярные
- новые
- старые
Для того, чтобы оставить комментарий Вы должны авторизоваться
Владимир Шмаков Java Developer в ЛАНИТ
4 апреля 2019, 13:32
Вопрос скорее почему все классы внутри остального нельзя сделать обычными а только static. Если убираешь слово staticто IntellijIDEA ругается.
0
hidden #598481
4 апреля 2019, 13:44
где ругань?
+1
Владимир Шмаков Java Developer в ЛАНИТ
8 апреля 2019, 09:26
У меня когда убирал static подчеркивл строку названия класса красным и предлагал либо main сделать нестатическим, либо объявить новый класс статическим...
0
hidden #598481
8 апреля 2019, 09:46
Потому что ты наверняка пытался к нему обратиться напрямую:
new TestTestTest() или new TestTest.TestTestTest()
Так можно обращаться только к статическим подклассам.
Если он не статический, то нужно сначала сделать
TestTest tt = new TestTest();
а потом уже можно у tt создать объект TestTestTest:
TestTestTest ttt = tt.new TestTestTest();
Ну или сразу сделать это с анонимным объектом:
TestTestTest ttt = new TestTest().new TestTestTest();
0
Владимир Шмаков Java Developer в ЛАНИТ
8 апреля 2019, 17:16
Видимо немного не понимаем друг друга поэтому вот картинки:
правда сейчас ничего не подчеркивает. Видимо глюк был.
0
--------Master
2 апреля 2019, 14:03
Например, чтобы в статическом блоке добавлять new Thread1(), а не new Solution().new Thread1()?
0