Форум программистов, компьютерный форум, киберфорум
Наши страницы
Программирование Android
Войти
Регистрация
Восстановить пароль
 
Рейтинг 5.00/4: Рейтинг темы: голосов - 4, средняя оценка - 5.00
msgusa
6 / 6 / 3
Регистрация: 29.06.2011
Сообщений: 183
1

Ссылка типа интерфейса или класса

18.08.2017, 12:32. Просмотров 783. Ответов 2
Метки нет (Все метки)

Привет. Разбираю пример.

Там объявлена ссылка такая: LoginPresenter loginpresenter.
LoginPresenter - это интерфейс. Затем создается объект: loginpresenter = new LoginPresenterImpl(this);
LoginPresenterImpl реализует интерфейс LoginPresenter.

Я вот что не могу понять, почему нельзя изначально объявить LoginPresenterImpl loginpresenter, и что от этого изменится?
0
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
18.08.2017, 12:32
Ответы с готовыми решениями:

Выполнение метода интерфейса через инстанс класса
Добрый день. Есть такой вопрос. Допустим у меня есть интерфейс: interface Observable{ ...

Ссылка на экземпляр объекта внутреннего класса
Интересная вещь-если написать внутренний класс, например, DrawView, создать его в onCreate...

Ссылка типа object на объект класса
using System; using System.Collections.Generic; using System.Linq; using System.Text; class...

Не удалось найти имя типа или пространства имен пропущена директива using или ссылка на сборку
Доброе время суток.Есть код: using System; using System.Collections.Generic; using System.Linq;...

Невозможно создать экземпляр абстрактного класса или интерфейса
using System.Windows.Media.Imaging; using System.Drawing; Есть эти две библиотеки, нужно...

2
Hank
64 / 55 / 5
Регистрация: 28.12.2011
Сообщений: 309
18.08.2017, 15:24 2
Лучший ответ Сообщение было отмечено msgusa как решение

Решение

LoginPresenterImpl может реализовывать не один интерфейс, а гораздо больше, и если вы присвоите ссылку объекту loginPresenterImpl, в этом объекте станут доступны методы всех интерфейсов, которые он реализовывает, а это плохо.
0
msgusa
6 / 6 / 3
Регистрация: 29.06.2011
Сообщений: 183
19.08.2017, 15:25  [ТС] 3
А, вот где собака зарыта! Понятно теперь, почему тут так много интерфейсов. Спасибо за разъяснение!
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
19.08.2017, 15:25

Странный SIGSEGV, или что зависит от порядка написания интерфейса класса
Есть некий класс,и в нем в секции private записано следующее: private: Value...

Не удалось найти имя типа или пространства имен "Poll" (пропущена директива using или ссылка на сборку?)
Добрый день! Просьба помочь. В найденных темах я не смог разобраться так, чтобы решить мою...

Не удалось найти имя типа или пространства имен "MySQL" (пропущена директива using или ссылка на сборку)
Выдаёт такую ошибку Ошибка 1 Не удалось найти имя типа или пространства имен "MySql" (пропущена...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.
Рейтинг@Mail.ru