Описание тега abstract-methods

Абстрактный метод - это метод, у которого есть только подпись и нет тела реализации. Часто используется, чтобы указать, что подкласс должен обеспечивать реализацию метода.
13 ответов

Есть ли способ сделать метод, который не является абстрактным, но должен быть переопределен?

Есть ли способ заставить дочерние классы переопределить неабстрактный метод суперкласса? Мне нужно иметь возможность создавать экземпляры родительского класса, но если класс расширяет этот класс, он должен дать свое собственное определение некоторых…
3 ответа

Абстрактный класс и чистый метод C++

Я прочитал в книге Стивена Прата - "C++ Primer Plus VI Edition", что в абстрактном классе я могу написать определение чистого метода. Я понял что могу написать например void pure() = 0 и тогда я могу дать определение этого метода в этом классе. я ду…
1 ответ

Интерфейс Java: Если мы реализуем встроенный интерфейс в Java, как мы можем получить результаты методов из этого интерфейса?

Я хотел бы знать, как методы интерфейса, которые являются абстрактными методами (для версий меньше, чем Java 8), могут возвращать результат при реализации интерфейса? Например: Если класс или один из его суперклассов реализует интерфейс Cloneable, в…
21 июл '16 в 09:58
4 ответа

Почему класс должен быть абстрактным, если у него есть хотя бы один абстрактный метод?

По какой причине я не могу создать конкретный класс с абстрактными методами в нем? Это принудительно только для того, чтобы убедиться, что ни один объект не создан без определения абстрактного метода? или есть другая вероятная причина этого ограниче…
15 окт '15 в 21:16
2 ответа

Как использовать интерфейсы и абстрактные методы?

Действительно ли интерфейсы и абстрактные методы используются для того, чтобы разработчики включили эти методы в свои классы? Разве это не может быть достигнуто с помощью процесса? например, разработка на основе тестирования. Это кажется негибким. Ч…
02 авг '13 в 09:22
2 ответа

Перегрузка абстрактных обобщенных методов в C#

Я пытаюсь реализовать общий абстрактный метод с ограничением типов, а затем реализовать его несколько раз, используя различные указанные типы. public abstract class Ability { public abstract void BindToStation<T>(T station) where T : Station; …
1 ответ

Считается ли лучшей формой для абстрактного класса включать абстрактные методы из интерфейса?

Я понимаю, что объявление абстрактных методов, оставшихся от интерфейса, необязательно, но мне интересно, считается ли это семантически лучшей формой для их включения. Интерфейс: public interface Interface { //Other methods.... public void unimpleme…
1 ответ

Python 3.6: abc.abstracmethod для метода класса не проверяется при вызове на уровне класса

С питоном 3.6, когда я украшаю abstractmehod с abc.abstractmethod в рамках класса, имеющего metaclass=abc.ABCMetaабстрактный метод может быть вызван с точки зрения класса (не экземпляра). Кажется, что abc декораторы выполняют проверки, когда создает…
2 ответа

C++ переопределить виртуальный метод с абстрактным классом в качестве параметра

У меня есть следующий абстрактный класс class A { public: virtual void foo(A* a) = 0; } и несколько классов, наследующих от этого класса. например class B : public A { public: void foo(A* a); // implementation in a separete file } Тем не менее, я хо…
19 сен '18 в 02:02
1 ответ

Как получить абстрактные методы из моего суперкласса на языке MTL

Я использую Acceleo-MTL для генерации классов Java. Как мне получить все мои абстрактные методы из моего абстрактного суперкласса? Чтобы получить простые операции и интерфейсы, я использую это: [comment]Operators[/comment] [for (o : Operation | clas…
16 май '13 в 16:15
1 ответ

Несовместимость версии Tomcat 7, бросая java.lang.abstractmethoderror

На самом деле я переносю свое приложение из Tomcat 5 в Tomcat 7.0.37, Это дает мне java.lang.abstractmethoderror exception когда я запускаю сервер. я использую ANT построить мое приложение. Я прочитал много постов и пробовал много решений, но не раб…
07 авг '14 в 13:03
3 ответа

Переопределение абстрактных методов в Python

При переопределении абстрактного метода Python, есть ли способ переопределить метод с дополнительными параметрами в сигнатуре метода? например Абстрактный класс = Agent(ABC): @abstractmethod def perceive_world(self, observation): pass Класс наследов…
24 апр '18 в 18:07
3 ответа

Зачем нам абстрактные классы в Java?

Зачем нам нужны абстрактные классы в Java? Если вы никогда не собираетесь превращать его в объект, зачем его вообще? Как вы используете его? Почему это там? Мне интересно то же самое с абстрактными методами. Я нахожу, что это похоже на концепцию суп…
3 ответа

java.lang.AbstractMethodError: com.ibm.db2.jcc.t4.b.isValid(I)Z

Добрый вечер, У меня проблема с проектом с EJB Timer, я не знаю, что я могу сделать, чтобы это исправить. в моем проекте есть несколько методов, все они работают хорошо, кроме "CargaC". Когда я вызываю его, я получаю сообщение об ошибке: Мой код: pu…
12 май '16 в 17:41
5 ответов

Когда и зачем использовать абстрактные классы / методы?

У меня есть несколько основных вопросов об абстрактных классах / методах. Я знаю, что основное использование абстрактных классов - это создание шаблонов для будущих классов. Но есть ли еще их использование? Когда вы предпочитаете их интерфейсам, а к…
27 июл '10 в 14:46
6 ответов

Могу ли я сказать, был ли вызван абстрактный метод?

Учитывая этот класс: abstract class Foo{ public Foo(){...} public abstract void checkable(); public void calledWhenCheckableIsCalled(){ System.out.println("checkable was called"); } } Есть ли код, который я могу поместить в конструктор Foo, чтобы сд…
1 ответ

Переопределение метода, который использует подтип

У меня есть абстрактный класс, имеющий абстрактный метод: public abstract SomeClass Do(SomeClass o1, SomeClass o2); Затем, когда я реализую в конкретном классе, который расширяет тот абстрактный класс, который имеет метод перед ним, я получаю ошибку…
1 ответ

AbstractMethodError в AtomikosDataSourceBean.getMaxLifetime()

Я использую основы atomikos в своем проекте для управления транзакциями. Я получаю следующее исключение после развертывания моего проекта. Я застрял в этом и не мог решить это. Может кто-нибудь помочь мне в решении этого. Исключение в потоке "Атомик…
22 мар '16 в 14:03
2 ответа

Игровые сервисы Google Play: AbstractMethodError при запуске экспортированного apk, в то время как работает нормально, если запустить из eclipse

Я использую в своем проекте библиотеку Google Play Game Services (а также BaseGameUtils). Мое приложение работает, когда я запускаю его из Eclipse, но сегодня я экспортировал его как apk, запустил и получил AbstractMethodError. Я пытался сделать apk…
4 ответа

Тип параметра Java Abstract Method

У меня проблема с реализацией абстрактного класса. Я объявляю Abstract Method с List в качестве параметра в AbstractClass, но когда я его реализую, он дает мне ошибки компиляции, говоря, что я не правильно реализовал абстрактный cass, который я расш…