Size: a a a

2020 November 25

 P

 ‌‌Gleb Pilipets... in learn.java
Alex Nemoy
жуть - а изящнее никак ?
Взять пайтон - тогда вот так будет
f"abra{kadabra}aaa" 😃
источник

AN

Alex Nemoy in learn.java
 ‌‌Gleb Pilipets
Взять пайтон - тогда вот так будет
f"abra{kadabra}aaa" 😃
угу - дотнет и питон уже дошли до жтого - не думал что java тупит
источник

AN

Alex Nemoy in learn.java
а никаких приблуд в ломбок или похожем нету ?
источник

DC

Denis Chikanov in learn.java
Alex Nemoy
а никаких приблуд в ломбок или похожем нету ?
Есть Скала и Котлин, поддерживающие интерполяцию.
А вообще тянуть ради этой одной довольно мало что меняющей по большому счёту штуки библиотеку - это странная мысль
источник

DS

Dmitriy Shilnikov in learn.java
Подскажите кто-нибудь в Spring Data JPA можно как-то проекцию сделать, чтобы внутри коллекция была?
Т.е. условно результат запроса будет [[A, A], [A, B], [B,C]], и чтобы проекция была в виде [[A, [A, B]], [B,[C]]].
Только без предложений загонять это всё в мапы / стримы.
источник

DK

Dmtr Klkv in learn.java
Коллеги проясните один момент:
Если в классе родителе есть статический метод и в классе наследнике есть такой же метод, с теми же параметрами, то метод в наследнике спрячет метод родителя. Написано: это совершенно не тоже самое, что переопределение.
Вопрос: отличие только в том, что метод родителя через super будет вызвать нельзя? Или в чем-то еще?
источник

V

Vlad in learn.java
Dmtr Klkv
Коллеги проясните один момент:
Если в классе родителе есть статический метод и в классе наследнике есть такой же метод, с теми же параметрами, то метод в наследнике спрячет метод родителя. Написано: это совершенно не тоже самое, что переопределение.
Вопрос: отличие только в том, что метод родителя через super будет вызвать нельзя? Или в чем-то еще?
Статические вызовы резолвятся по типу ссылки, а не по объекту, который лежит под ссылкой.
Типа Parent x = new Child()
x.f() вызовет на паренте
Если я ничего не путаю...

Поэтому такая магия возможна -https://stackoverflow.com/questions/3293353/how-come-invoking-a-static-method-on-a-null-reference-doesnt-throw-nullpointe?rq=1
И поэтому не нужно из перекрывать
источник

DK

Dmtr Klkv in learn.java
В этом и вопрос, что означает method hiding. Потому что я пока нашел только то, что если ты переопределяешь нестатический метод, то внутри него ты можешь вызвать super.method(); а если пытаешься сделать тоже самое со статикой то так вызвать нельзя. Однако:
Пусть B extends A.
B.method() //вызовется б.
A.method() //вызовется а.
А a = (A) b;
a.method(); //ругнется на то, что статический метод вызывается из объекта, а не из класса, но вызовется a.

Не понимаю, что значит сокрытие методов.
источник

DK

Dmtr Klkv in learn.java
Ну то есть как не понимаю, понимаю, что сокрытие метода родителя от наследника, но не от всего скоупа приложения. Вот и спрашиваю, это все?
источник

DS

Dmitriy Shilnikov in learn.java
Dmtr Klkv
В этом и вопрос, что означает method hiding. Потому что я пока нашел только то, что если ты переопределяешь нестатический метод, то внутри него ты можешь вызвать super.method(); а если пытаешься сделать тоже самое со статикой то так вызвать нельзя. Однако:
Пусть B extends A.
B.method() //вызовется б.
A.method() //вызовется а.
А a = (A) b;
a.method(); //ругнется на то, что статический метод вызывается из объекта, а не из класса, но вызовется a.

Не понимаю, что значит сокрытие методов.
Ну в этом случае, это просто значит, что имея только класс B ты не сможешь вызвать A.method просто так.
источник

DK

Dmtr Klkv in learn.java
Dmitriy Shilnikov
Ну в этом случае, это просто значит, что имея только класс B ты не сможешь вызвать A.method просто так.
Не могу внутри B, а снаружи все равно могу. Я вот о чем.
источник

DS

Dmitriy Shilnikov in learn.java
Dmtr Klkv
Не могу внутри B, а снаружи все равно могу. Я вот о чем.
Да забей. Просто вот так называют.
Разница между статическими и не статическими в данном случае в том, что первые зависят от типа переменной, вторые - от реального значения переменной.
источник

VG

Vitaly Gudz in learn.java
Dmtr Klkv
Коллеги проясните один момент:
Если в классе родителе есть статический метод и в классе наследнике есть такой же метод, с теми же параметрами, то метод в наследнике спрячет метод родителя. Написано: это совершенно не тоже самое, что переопределение.
Вопрос: отличие только в том, что метод родителя через super будет вызвать нельзя? Или в чем-то еще?
Ну просто подразумевают мб, что это не переопределение, а "перекрытие"
источник

VG

Vitaly Gudz in learn.java
источник

DK

Dmtr Klkv in learn.java
В обшем из-за статического связывания, поведение будет другим. Поэтому используют другой термин. Спасибо.
источник

V

Vadim in learn.java
Дмитрий Баевский
Напрасно. Я на JR уровнем повыше, чем вы, и хочу заметить, что на HS задания на голову сложнее.
На HS задания сложнее?
источник

V

Vadim in learn.java
Что-то там очень простые задания к темам
источник

HH

Hig Higo in learn.java
источник

HH

Hig Higo in learn.java
Что я делаю не так? Как перевернуть массив
источник

DS

Dmitriy Shilnikov in learn.java
Hig Higo
Arrays.asList - делает иммутабельный лист
источник