Запитання з тегом «abstract»

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


16
Чи можемо ми створити абстрактний клас?
Під час одного з моїх інтерв'ю мене запитали "Чи можемо ми створити абстрактний клас?" Моя відповідь була "Ні. Ми не можемо". Але інтерв'юер сказав мені: "Неправильно, ми можемо". Я на цьому трохи сперечався. Тоді він сказав мені спробувати це вдома. abstract class my { public void mymethod() { System.out.print("Abstract"); } …
573 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 то я не можу створити інстанцію G його, оскільки …

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, але це є хітом продуктивності, оскільки деякі класи мають важкий запуск. Я не можу знайти нічого, очевидно, як isAb абстракт () в документах 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: String) : Resource() …

4
Чому можна оголосити метод інтерфейсу Java абстрактним?
Я сьогодні використовував функцію рефакторингу Eclipse "тягнутий інтерфейс", щоб створити інтерфейс на основі існуючого класу. Діалогове вікно запропонувало створити всі нові методи нового інтерфейсу як "абстрактні" методи. Яка б користь від цього? Я вважав, що той факт, що вам було дозволено оголошувати методи інтерфейсу абстрактними, є зайвою і нешкідливою особливістю …

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


16
Як створити абстрактний базовий клас у JavaScript?
Чи можна імітувати абстрактний базовий клас у JavaScript? Який найелегантніший спосіб зробити це? Скажіть, я хочу зробити щось на кшталт: - var cat = new Animal('cat'); var dog = new Animal('dog'); cat.say(); dog.say(); Він повинен виводити: 'кора', 'мяу'
109 javascript  oop  abstract 

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

5
Чому не абстрактні поля?
Чому класи Java не можуть мати абстрактні поля, як вони можуть мати абстрактні методи? Наприклад: У мене є два класи, які розширюють один і той самий абстрактний базовий клас. Кожен із цих двох класів має ідентичний метод, за винятком рядкової константи, яка, як трапляється, є повідомленням про помилку. Якби поля …
100 java  methods  field  abstract 


7
Абстрактний атрибут (не властивість)?
Яка найкраща практика визначати атрибут абстрактного екземпляра, але не як властивість? Я хотів би написати щось на зразок: class AbstractFoo(metaclass=ABCMeta): @property @abstractmethod def bar(self): pass class Foo(AbstractFoo): def __init__(self): self.bar = 3 Замість: class Foo(AbstractFoo): def __init__(self): self._bar = 3 @property def bar(self): return self._bar @bar.setter def setbar(self, bar): self._bar …
81 python  abstract 
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.