Size: a a a

2020 August 14

A

Anton in learn.java
Fortune's Desire
Это значит, что я забыл про воид и ретурн
jls-8.4.9. Overloading
Первые два абзаца полностью отвечают на твой вопрос
источник

F

Fortune's Desire in learn.java
потому что иначе сигнатуры идентичны
источник

DC

Denis Chikanov in learn.java
Fortune's Desire
потому что иначе сигнатуры идентичны
...возможно, именно поэтому первые два метода нельзя друг другом перегружать...?
источник

F

Fortune's Desire in learn.java
источник

F

Fortune's Desire in learn.java
ой
источник

F

Fortune's Desire in learn.java
Теперь понял)
источник

DC

Denis Chikanov in learn.java
И это хорошо!
источник

A

Anton in learn.java
Fortune's Desire
Теперь понял)
Даже прямо такое правило прописано
JLS-8.4.2. Method Signature:

It is a compile-time error to declare two methods with override-equivalent signatures in a class.
источник

F

Fortune's Desire in learn.java
Anton
Даже прямо такое правило прописано
JLS-8.4.2. Method Signature:

It is a compile-time error to declare two methods with override-equivalent signatures in a class.
да я запомнил прост, что для перегрузки нужны разные параметры, но это смазалось в "методы должны быть разные"
источник

F

Fortune's Desire in learn.java
отсюда и запинка на воид методе
источник

SA

Sherzod Akhmedov in learn.java
Посмотрите на класс Stork.
Он переопределяет метода fly();

Но я немогу понять, какой именно метод здесь переопределяется? Интерфейсовский fly() или абстрактовский fly()?

Gist: https://gist.github.com/keepcoderpro/4f1f83b65cbb1af5c98a4087130e56fe

#вопрос #ооп #интерфейс #абстракция
источник

GV

Gukov Viktor in learn.java
Sherzod Akhmedov
Посмотрите на класс Stork.
Он переопределяет метода fly();

Но я немогу понять, какой именно метод здесь переопределяется? Интерфейсовский fly() или абстрактовский fly()?

Gist: https://gist.github.com/keepcoderpro/4f1f83b65cbb1af5c98a4087130e56fe

#вопрос #ооп #интерфейс #абстракция
Всегда побеждает суперкласс
источник

GV

Gukov Viktor in learn.java
Sherzod Akhmedov
Посмотрите на класс Stork.
Он переопределяет метода fly();

Но я немогу понять, какой именно метод здесь переопределяется? Интерфейсовский fly() или абстрактовский fly()?

Gist: https://gist.github.com/keepcoderpro/4f1f83b65cbb1af5c98a4087130e56fe

#вопрос #ооп #интерфейс #абстракция
Но в данном случае, так как сигнатуры одинаковые, то это одновременно и реализация как метода суперкласса, так и метода интерфейса.
Собственно в IDEA это четко будет видно.
источник

A

Anton in learn.java
Gukov Viktor
Но в данном случае, так как сигнатуры одинаковые, то это одновременно и реализация как метода суперкласса, так и метода интерфейса.
Собственно в IDEA это четко будет видно.
Понравился коммент на Stack Overflow на эту тему:
You're overriding both. What's the problem?
источник
2020 August 15

GV

Gukov Viktor in learn.java
Anton
Понравился коммент на Stack Overflow на эту тему:
You're overriding both. What's the problem?
Всегда ищешь подвох
источник

A

Anton in learn.java
Gukov Viktor
Всегда ищешь подвох
Пытался осознать в каком контексте имеет смысл "Всегда побеждает суперкласс", не понял
источник

GV

Gukov Viktor in learn.java
Anton
Пытался осознать в каком контексте имеет смысл "Всегда побеждает суперкласс", не понял
Не уточнил, что это замечание корректно для default методов
источник

A

Anton in learn.java
Gukov Viktor
Не уточнил, что это замечание корректно для default методов
Спасибо, понял)
источник

SA

Sherzod Akhmedov in learn.java
Gukov Viktor
Не уточнил, что это замечание корректно для default методов
те которые были добавлены в Java 8?
источник

GV

Gukov Viktor in learn.java
Sherzod Akhmedov
те которые были добавлены в Java 8?
Ага
источник