|
|
|
Объявление переменной класса T, реализующей интерфейс L, в котором нет нек-рых методов T
|
|||
|---|---|---|---|
|
#18+
Не пинайте - яву только начал изучать. Объясните тёмному, плз: если в классе LinkedList существует метод addFirst(), и кроме того, этот класс реализует интерфейс List (среди прочих), то почему при объявлении: Код: java 1. - я не в праве воспользоваться вызовом a.addFirst(), которого нет в интерфейсе List ? То есть, нужно объявлять именно так: Код: java 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.03.2013, 16:37:01 |
|
||
|
Объявление переменной класса T, реализующей интерфейс L, в котором нет нек-рых методов T
|
|||
|---|---|---|---|
|
#18+
ozzmosis, метод addFirst объявлен в другом интерфейсе - Deque, который также наследует LinkedList. Можно объявить переменную как Код: java 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.03.2013, 16:41:41 |
|
||
|
Объявление переменной класса T, реализующей интерфейс L, в котором нет нек-рых методов T
|
|||
|---|---|---|---|
|
#18+
Очевидно же, что компилятор понятия не имеет на какие экземпляры будет в рантайме ссылаться переменная. Поэтому обращаться можно только к членам соответствующим типу переменной. Это называется "статическая типизация". ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.03.2013, 16:44:28 |
|
||
|
Объявление переменной класса T, реализующей интерфейс L, в котором нет нек-рых методов T
|
|||
|---|---|---|---|
|
#18+
Adva, ну, а если бы этот метод не был ни в каких и/фейсах объявлен, тогда что ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.03.2013, 16:45:43 |
|
||
|
|

start [/forum/topic.php?fid=59&msg=38198989&tid=2129689]: |
0ms |
get settings: |
18ms |
get forum list: |
28ms |
check forum access: |
6ms |
check topic access: |
6ms |
track hit: |
64ms |
get topic data: |
20ms |
get forum data: |
5ms |
get page messages: |
82ms |
get tp. blocked users: |
3ms |
| others: | 312ms |
| total: | 544ms |

| 0 / 0 |
