Описание тега downcasting
Downcasting позволяет обрабатывать объект типа суперкласса как объект любого типа подкласса.
3
ответа
Шаблон проектирования, позволяющий избежать потери при передаче сообщений
Базовый класс MessageHandler вывел классы. Они хотели бы передавать сообщения друг другу. Сообщения могут быть разных классов, но могут быть сделаны для общего класса. Как каждый может MessageHandler избежать передачи полученного сообщения? Можно ли…
17 фев '12 в 00:59
4
ответа
Использование downcasting в реальной жизни приложения
Я знаю, что неявное приведение выполняется автоматически компилятором и виртуальной машиной, и что явное приведение необходимо для преобразования типов данных, когда Java не уверена, будет ли результат верным. Приведение должно быть сделано между пр…
16 июл '13 в 12:22
3
ответа
Должен ли я избегать удушения при использовании заводского шаблона?
Я работаю над серверным проектом, который реализует собственный протокол. Сервер реализован с фабричным шаблоном в C++, и сейчас мы сталкиваемся с проблемой снижения производительности. Протокол, над которым я работаю, предназначен для автоматическо…
22 май '11 в 14:05
2
ответа
Почему я получаю быстрый бросок Dynamic Cast?
Эта строка кода, кажется, вызывает проблему { gymnastTables.gymnastsArray = defualts.objectForKey("Gymnasts") as Array } Почему я получаю сообщение об ошибке?
01 сен '14 в 21:01
2
ответа
C# преобразование родительского объекта в подклассы
Я получил список родительских объектов (устройств) и хотел бы преобразовать каждый объект устройства в объект подкласса. Макет будет выглядеть примерно так: public class Device { public string FimrwareVersion { get; set; } public string DeviceName {…
14 июн '18 в 21:00
1
ответ
После перевода объекта супертипа в подтип, когда я вызываю любой метод объекта супертипа, они фактически не вызываются
class A{ void amethod(){ System.out.println("amethod"); } void overridenmethod(){ System.out.println("in A"); } } class B extends A{ void bmethod(){ System.out.println("bmethod"); } void overridenmethod(){ System.out.println("in B"); } } class Test…
24 янв '18 в 20:22
3
ответа
Унижение во время вызова метода super.clone()
Рассмотрим следующую программу class A implements Cloneable { String str = null; public void set(String str) { this.str = str; } @Override public A clone() { A a = null; try { a = (A) super.clone(); if(a.str!=null) { System.out.println(a.str); } els…
08 авг '16 в 11:36
1
ответ
C# и WPF: возможно ли сделать автоматическое понижение аргумента отправителя на основе его типа внутри обработчика событий?
Обычно я знаю, какой конкретный элемент управления вызывает определенное событие, поэтому в обработчике событий я могу сделать ссылку на него путем ручного понижения его параметра отправителя, например, такого (предполагая, что отправитель является …
30 мар '18 в 10:46
1
ответ
Является ли downcasting во время выполнения полиморфным?
Обновление в OOPS делает возможным полиморфизм во время выполнения путем переопределения методов родительского и дочернего классов. Может ли даункастинг в OOPS также быть полиморфным во время выполнения каким-либо образом?
08 сен '18 в 01:55
4
ответа
Вы можете понижать объекты в Java, не объявляя новую переменную?
Я пытался сделать что-то вроде class O has a child E Я объявляю переменную O xyz = new E(); но потом, если я вызову xyz.method(), я могу вызывать только те из методов класса O, а не E, поэтому я могу уменьшить E xyz2 = (E) xyz; Мой вопрос: можете ли…
31 янв '11 в 05:41
2
ответа
Могу ли я вызвать метод дочернего класса, используя родительский объект?
Я создал базовый класс животных и детский класс как кошка. В основном я хочу создать объект класса PARENT и вызвать метод дочернего класса. Так это возможно или нет? Я также использовал instanceOf просто проверить отношения public class Animal { pub…
09 мар '17 в 10:31
1
ответ
Сбой при назначении значения
Аналитика показывает, что у 5 пользователей было 20 сбоев при запуске следующего метода. В Backend внесено изменение, которое теперь возвращает массив, содержащий один словарь. Я быстро добавил этот код, чтобы охватить оба случая. А как же этот код …
06 ноя '18 в 06:18
1
ответ
Даункинг: строительство деревьев
Я написал шип решение для базового класса построения дерева, который я создал. Выход для первого "Добавление элемента № {0} на глубине {0}" - это элемент 0 на глубину 0, а не ожидаемый 0,1. Это просто поразило меня, когда я писал это. Может ли это б…
11 мар '14 в 04:17
3
ответа
Даункинг исключение
Я сделал этот код: protected Lala lala; private Oyeha oyeha; public void setLala(Lala lala) { this.lala = lala; } this.oyeha = (Oyeha) this.lala; executeHostBean = this.oyeha.updateMethod(a, b, c, d, e); Лала - класс отцов. Oyeha - это ребенок, кото…
24 июл '12 в 03:48
1
ответ
Почему автоматическое понижение рейтинга не применяется к функциям шаблона?
Кто-то задал этот вопрос о добавлении строки. Это string s; s = s + 2; не компилируется. Люди давали ответы о том, что operator+ определяется как функция шаблона, в то время как operator+= нет, поэтому авто удручает (int(2) в char(2)) не применяется…
04 авг '17 в 12:03
1
ответ
Добавление метода в производный класс и вызов его из базового указателя
Допустим, у меня есть следующая иерархия классов: class A { public: virtual ~A(); }; class B : public A {}; class AUser { public: virtual ~AUser(); protected: A* m_pA; }; class BUser : public AUser {}; Теперь я хочу добавить метод B который не имеет…
03 фев '15 в 06:12
2
ответа
Унизительная процедура
Может кто-нибудь объяснить мне, если это нормально, чтобы уменьшить это, или мы ДОЛЖНЫ использовать явное приведение типов для него? #include<iostream> using namespace std; class base { public: virtual void func() { cout<<"Base \n"; } vo…
20 май '14 в 08:51
4
ответа
Апкастинг в C#
Можем ли мы считать преобразование типов значений, например, int в float, преобразованием upcasting, а float в int - downcasting? Я полагаю, что когда мы говорим об апскейтинге и спуске, мы конкретно имеем в виду эталонные конверсии.
08 апр '13 в 13:44
1
ответ
Существует ли концепция стирания типа в языке Си?
Интересно, используются ли методы стирания типов где-либо на языке Си? Что происходит в C, когда происходит приведение типов? Используются ли в нем концепции, аналогичные стиранию типов и приведению вниз? Каковы основные различия между стиранием тип…
22 ноя '16 в 19:47
1
ответ
Приведение C++ к байту (unit8_t) во время вычитания не вызовет недостаточного заполнения, как я ожидал; вывод int16_t; Зачем?
Обратите внимание, что byte это 8-битный тип (uint8_t), а unsigned int это 16-битный тип (uint16_t). Следующее не дает ожидаемых результатов. Я ожидаю, что он опустится, и результатом всегда будет uint8_t, но вместо этого он становится int со знаком…
20 апр '17 в 04:10