11 / 11 / 2
Регистрация: 20.05.2011
Сообщений: 71

Можно ли на лету изменять this?

02.12.2014, 17:10. Показов 828. Ответов 2
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Привет,

Можно ли на лету изменять this в java?

например есть базовый класс Base и у него 2 наследника: A и B.

Сначала мы создаем Base = new A();
и работаем через Base класс,
в прекрасный момент вызывается функция Base.ChangeInstance(),
в которой я бы хотел сделать типа такого:
this = new B();

Т.е. "скрыто" изменить наследника A на B.
Можно ли такое сделать в java?
Или каким-то другим образом?

Добавлено через 14 минут
да, this'у присвоить ничег нельзя.
Может есть какие-то идеи как это реализовать подобное?

Добавлено через 3 минуты
уточнение: класс Base использует клиент, который должен послать только "сигнал" - дернуть его метод,
но не заменять его на инстанс класса B вместо А!
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
02.12.2014, 17:10
Ответы с готовыми решениями:

Можно ли создать интерфейс, через который можно было бы изменять параметры блоков Simulink?
Здраствуйте,уважаемые форумчане.) Подскажите пожалуйста,можно ли создать интерфейс, через который можно было бы изменять параметры блоков...

А можно ли в VB текст из KOI8R перекодировать "на лету"?
Скачиваю текст со страницы vtData=Inet1.GetChunk(1024, icString) На выходе он весь в KOI8R А мне нужно в windows /dos кодировке ...

Можно ли на лету ковертировать видео и посылать его на сервис?
Нужно что-бы видео с вебки конвертировалось в .mp4 фомат и результат отсылался на wcf сервис. Загвоздка в том что это делаь нужно...

2
 Аватар для KuKu
1563 / 1041 / 94
Регистрация: 17.04.2009
Сообщений: 2,995
02.12.2014, 17:27
Можно использовать dynamic proxy. Ну или самому писать прокси класс.
0
 Аватар для ne2win
206 / 206 / 71
Регистрация: 25.02.2014
Сообщений: 569
03.12.2014, 00:40
Можно использовать паттерн-Стратегия. Выделить все абстрактные методы в отдельный интерфейс(напр IBase), написать два класса его реализующие A,B. Инкапсулировать поле IBase field в классе Base, написать к нему сеттер позволяющий присвоить реализацию. Имплементить IBase в класс Base, в каждом из этих методов вызывать одноименный метод Base.field.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
03.12.2014, 00:40
Помогаю со студенческими работами здесь

можно ли на PHP генерировать код страницы на лету используя данные из базы данных?
собственно вопрос в заголовке темы.

Можно ли изменять страницы сайта?
Имеется в виду то, что когда делал на скорую руку сайты (их у меня з) над содержанием страниц плохо поработал. Например, забыл вставить...

Можно ли изменять управляющую переменную?
Вопрос таков: дан цикл for, можно ли внутри этого цикла изменить управляющую переменную i, скажем, увеличить на 1? И как поведёт себя при...

Можно ли изменять переменные в классе
Пример вот такоей class tipoClass { var $a = 2 } a = new tipoClass (); a->c =4; после этого? переменная если обратиться...

Можно ли из javascript изменять настройки печати?
Можно ли из javascript изменять настройки печати например убрать url из footer'а


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

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

Новые блоги и статьи
Фото: Daniel Greenwood
kumehtar 13.11.2025
Расскажи мне о Мире, бродяга
kumehtar 12.11.2025
— Расскажи мне о Мире, бродяга, Ты же видел моря и метели. Как сменялись короны и стяги, Как эпохи стрелою летели. - Этот мир — это крылья и горы, Снег и пламя, любовь и тревоги, И бескрайние. . .
PowerShell Snippets
iNNOKENTIY21 11.11.2025
Модуль PowerShell 5. 1+ : Snippets. psm1 У меня модуль расположен в пользовательской папке модулей, по умолчанию: \Documents\WindowsPowerShell\Modules\Snippets\ А в самом низу файла-профиля. . .
PowerShell и онлайн сервисы. Валюта (floatrates.com руб.)
iNNOKENTIY21 11.11.2025
PowerShell функция floatrates-rub Примеры вызова: # Указанная валюта 'EUR' floatrates-rub -Code 'EUR' # Список имеющихся кодов валют floatrates-rub -Available function floatrates-rub {
PowerShell и онлайн сервисы. Погода (RP5.ru)
iNNOKENTIY21 11.11.2025
PowerShell функция Get-WeatherRP5rss для получения погоды с сервиса RP5 Примеры вызова Get-WeatherRP5rss с указанием id 5484 — Москва (восток, Измайлово) и переносом строки:. . .
PowerShell и онлайн сервисы. Погода (wttr)
iNNOKENTIY21 11.11.2025
PowerShell Функция для получения погоды с сервиса wttr Примеры вызова: Погода в городе Омск с прогнозом на день, можно изменить прогноз на более дней, для этого надо поменять запрос:. . .
PowerShell и онлайн сервисы. Валюта (ЦБР)
iNNOKENTIY21 11.11.2025
# Получение курса валют function cbr (] $Valutes = @('USD', 'EUR', 'CNY')) { $url = 'https:/ / www. cbr-xml-daily. ru/ daily_json. js' $data = Invoke-RestMethod -Uri $url $esc = 27 . . .
И решил я переделать этот ноут в машину для распределенных вычислений
Programma_Boinc 09.11.2025
И решил я переделать этот ноут в машину для распределенных вычислений Всем привет. А вот мой компьютер, переделанный из ноутбука. Был у меня ноут асус 2011 года. Со временем корпус превратился. . .
Мысли в слух
kumehtar 07.11.2025
Заметил среди людей, что по-настоящему верная дружба бывает между теми, с кем нечего делить.
Новая зверюга
volvo 07.11.2025
Подарок на Хеллоуин, и теперь у нас кроме Tuxedo Cat есть еще и щенок далматинца: Хочу еще Симбу взять, очень нравится. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru