Вопросы с тегом «abstract»

abstract - это ключевое слово, используемое множеством объектно-ориентированных языков программирования. Методы и классы могут быть помечены как абстрактные, чтобы указать, что они не содержат полной реализации логики приложения и должны быть расширены. Абстрактные классы не могут быть созданы и служат цели предоставления единообразного интерфейса для их подклассов, а также реализации общих методов, которые не нужно повторно реализовывать для каждого подкласса.


16
Можем ли мы создать экземпляр абстрактного класса?
Во время одного из моих интервью меня спросили: «Можем ли мы создать экземпляр абстрактного класса?» Мой ответ был «Нет, мы не можем». Но интервьюер сказал мне: «Неправильно, мы можем». Я немного поспорил об этом. Затем он сказал мне попробовать это дома. abstract class my { public void mymethod() { System.out.print("Abstract"); …
574 java  oop  class  object  abstract 

12
Можно ли создавать абстрактные классы в Python?
Как я могу сделать класс или метод абстрактным в Python? Я пытался переопределить __new__() так: class F: def __new__(cls): raise Exception("Unable to create an instance of abstract class %s" %cls) но теперь, если я создам класс G который наследует от Fтак: class G(F): pass тогда я не могу создать экземпляр …

9
Java абстрактный интерфейс
Рассмотрим пример (который компилируется в Java) public abstract interface Interface { public void interfacing(); public abstract boolean interfacing(boolean really); } Почему интерфейс должен быть «объявлен» абстрактным? Есть ли другие правила, которые применяются с абстрактным интерфейсом? Наконец: если abstractон устарел, почему он включен в Java? Есть ли история для абстрактного интерфейса?
197 java  interface  abstract 

3
Как я могу определить, является ли класс Java абстрактным отражением
Я изучаю классы в файле Jar и хочу найти те, которые не являются абстрактными. Я могу решить эту проблему, создавая экземпляры классов и перехватывая InstantiationException, но это приводит к снижению производительности, так как некоторые классы сильно загружаются. Я не могу найти ничего такого, как isAbstract () в документации Class.java.
184 java  class  abstract 

8
Расширить класс данных в Котлине
Классы данных, кажется, заменяют старомодные POJO в Java. Вполне ожидаемо, что эти классы позволят наследовать, но я не вижу удобного способа расширить класс данных. Что мне нужно, это что-то вроде этого: open data class Resource (var id: Long = 0, var location: String = "") data class Book (var isbn: …

4
Почему нужно объявлять метод интерфейса Java как абстрактный?
Сегодня я использовал функцию рефакторинга «pull interface» в Eclipse, чтобы создать интерфейс на основе существующего класса. В диалоговом окне предлагается создать все новые методы нового интерфейса как «абстрактные» методы. Какая польза от этого? Я думал, что тот факт, что вам было разрешено объявлять методы интерфейса как абстрактные, был излишней и …

8
Почему в PHP 5.2+ запрещены методы абстрактного статического класса?
После включения строгих предупреждений в PHP 5.2 я увидел множество предупреждений о строгих стандартах из проекта, который изначально был написан без строгих предупреждений: Строгие стандарты : статическая функция Program :: getSelectSQL () не должна быть абстрактной в Program.class.inc Рассматриваемая функция принадлежит абстрактному родительскому классу Program и объявляется абстрактным статическим, поскольку …
121 php  oop  static  abstract 



6
Почему методы интерфейса C # не объявлены абстрактными или виртуальными?
Методы C # в интерфейсах объявляются без использования virtualключевого слова и переопределяются в производном классе без использования overrideключевого слова. Для этого есть причина? Я предполагаю, что это всего лишь удобство языка, и, очевидно, CLR знает, как с этим справиться (методы не являются виртуальными по умолчанию), но есть ли другие технические …

5
Почему не абстрактные поля?
Почему классы Java не могут иметь абстрактные поля, как у них могут быть абстрактные методы? Например: у меня есть два класса, которые расширяют один и тот же абстрактный базовый класс. Каждый из этих двух классов имеет идентичный метод, за исключением константы String, которая является сообщением об ошибке внутри них. Если …
102 java  methods  field  abstract 

6
Swift - метод класса, который должен быть переопределен подклассом
Есть ли в Swift стандартный способ сделать "чистую виртуальную функцию", т.е. тот, который должен быть переопределен каждым подклассом, и который, если это не так, вызывает ошибку времени компиляции?
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.