1 / 1 / 0
Регистрация: 05.05.2020
Сообщений: 186

Вызов метода у одного класса через другой класс

31.03.2021, 08:58. Показов 2135. Ответов 7
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Мне нужно вызвать метод display у класса View через класс Controller для вывода информации в консоли. При этом Controller передает в View значения переменных. Их конструкторы трогать нельзя, они уже заняты. При это
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
31.03.2021, 08:58
Ответы с готовыми решениями:

Вызов метода одного класса через другой
Необходимо вызвать метод класса ч/з другой класс. Методов класса много, сами классы тоже много. Поэтому делаю один класс, который будет...

Вызов метода и передача данных из одного класса в другой
Есть два класса, основной(Form1) и дополнительный(Class1). В дополнительном классе находится метод, который просто добавляет текст в...

Вызов одного метода через другой
Здравствуйте ! У меня такая проблема: есть событие нажатия на кнопку: private void NewGame_Click(object sender, EventArgs e) ...

7
Эксперт PythonЭксперт Java
19530 / 11067 / 2931
Регистрация: 21.10.2017
Сообщений: 23,294
31.03.2021, 09:08
Цитата Сообщение от afasdfsadfs Посмотреть сообщение
Их конструкторы трогать нельзя, они уже заняты
Рофл. Зачем их трогать?
Контроллер знает о Вью?
0
1 / 1 / 0
Регистрация: 05.05.2020
Сообщений: 186
31.03.2021, 09:23  [ТС]
iSmokeJC, Да, он передает ему переменные, которые нужно вывести в консоли, к тому же в конструктор Вью передается экземпляр Контроллера. Хочу чтобы Контроллер передал Вью и сказал, чтобы он вывел в консоль эти данные.
0
Эксперт PythonЭксперт Java
19530 / 11067 / 2931
Регистрация: 21.10.2017
Сообщений: 23,294
31.03.2021, 09:50
afasdfsadfs, код очевидно очень секретный?
Если контроллер отдает вьюхе данные, то в чем проблема вывести их в консоль?
0
1 / 1 / 0
Регистрация: 05.05.2020
Сообщений: 186
31.03.2021, 10:04  [ТС]
iSmokeJC, Не очень, просто в Мэйне нужно постоянно вызывать метод для вывода информации, а мне хотелось это автоматизировать, т.к. пытаюсь расширить паттерн наблюдатель с помощью mvc, а прикол в наблюдателе что при изменении данных он сразу выводить в консоль обновленную информацию.
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
public class View implements DisplayElement {
 
    private Controller сontroller;
 
    public View(Controller сontroller) {
        this.Controller = сontroller;
    }
 
 
    @Override
    public void display() {
            System.out.println("Current conditions: " + controller.getTemperature()
                    + "F degrees and " + controller.getHumidity() + "% humidity");
 
        }
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
public class Сontroller implements Observer {
 
    private float temperature;
    private float humidity;
 
    public Controller(Model model) {
        model.registerObserver(this);
    }
 
    @Override
    public void update(float temperature, float humidity, float pressure) {
        this.temperature = temperature;
        this.humidity = humidity;
    }
 
 
    public float getTemperature() {
        return temperature;
    }
 
    public float getHumidity() {
        return humidity;
    }
 
}
Добавлено через 6 минут
iSmokeJC, и получается, если я при изменении будут вызывать метод для вывода, у меня не выполняется одна из принципов паттерна.
0
Эксперт PythonЭксперт Java
19530 / 11067 / 2931
Регистрация: 21.10.2017
Сообщений: 23,294
31.03.2021, 10:31
Цитата Сообщение от afasdfsadfs Посмотреть сообщение
у меня не выполняется одна из принципов паттерна
Я тут не вижу чтоб и остальные принципы выполнялись.
0
1 / 1 / 0
Регистрация: 05.05.2020
Сообщений: 186
31.03.2021, 10:48  [ТС]
iSmokeJC, есть еще же model(субъект), где происходит вся магия, контроллер(а.к.а. наблюдатель) помогает сохранять принцип слабой связи, данные обновновляются, если к примеру в контроллере в методете update для проверки написать соут то обновление происходит. Но не происходит вывода, эта роль, по теории, должна быть у Вью.
0
 Аватар для vvm28
772 / 540 / 67
Регистрация: 22.12.2013
Сообщений: 2,498
Записей в блоге: 26
07.04.2021, 14:21
Вот примеры простые примеры MVC на java:
Ответы на Хабре
Архитектура MVC в Java
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
07.04.2021, 14:21
Помогаю со студенческими работами здесь

Вызов метода производного класса через указатель на базовый класс
Всем привет ! Подскажите почему , при выполнении строки 45 я получаю ошибку ? А именно при выполнении выражения c->fnz() ...

Вызов одного метода класса другим методом этого же класса
Доброе время суток. Столкнулся с необходимостью программировать на VB, вроде всё просто, но не могу понять как вызвать метод класса из...

Что-то я не понимаю.Вызов метода одного класса из другого класса
Есть два класса первый содержит атрибуты объекта описывающие кнопку: имя, позиция, размер и тд... А так же содержит набор методов для...

Вызов метода одного класса внутри другого класса
PHP передача метода, с класса, в другой класс Столкнулся с проблемой не могу передать метод или функцию с одного класса в другой ...

Вызов метода одного класса в другом классе
Привет всем Когда запускаю, то в методе GetOut() вместо имени человека выводится цифра 1 Помогите пожалуйста, заранее спасибо. ...


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

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

Новые блоги и статьи
Модель заражения группы наркоманов
alhaos 17.04.2026
Условия задачи сформулированы тут Суть: - Группа наркоманов из 10 человек. - Только один инфицирован ВИЧ. - Колются одной иглой. - Колются раз в день. - Колются последовательно через. . .
Мысли в слух. Про "навсегда".
kumehtar 16.04.2026
Подумалось тут, что наверное очень глупо использовать во всяких своих установках понятие "навсегда". Это очень сильное понятие, и я только начинаю понимать край его смысла, не смотря на то что давно. . .
My Business CRM
MaGz GoLd 16.04.2026
Всем привет, недавно возникла потребность создать CRM, для личных нужд. Собственно программа предоставляет из себя базу данных клиентов, в которой можно фиксировать звонки, стадии сделки, а также. . .
Знаешь почему 90% людей редко бывают счастливыми?
kumehtar 14.04.2026
Потому что они ждут. Ждут выходных, ждут отпуска, ждут удачного момента. . . а удачный момент так и не приходит.
Фиксация колонок в отчете СКД
Maks 14.04.2026
Фиксация колонок в СКД отчета типа Таблица. Задача: зафиксировать три левых колонки в отчете. Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка) / / . . .
Настройки VS Code
Loafer 13.04.2026
{ "cmake. configureOnOpen": false, "diffEditor. ignoreTrimWhitespace": true, "editor. guides. bracketPairs": "active", "extensions. ignoreRecommendations": true, . . .
Оптимизация кода на разграничение прав доступа к элементам формы
Maks 13.04.2026
Алгоритм из решения ниже реализован на нетиповом документе, разработанного в конфигурации КА2. Задачи, как таковой, поставлено не было, проделанное ниже исключительно моя инициатива. Было так:. . .
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: реализовать контроль корректности заполнения дат назначения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru