Вопросы с тегом 'metaclass'

В объектно-ориентированном программировании метакласс является классом, экземпляры которого являются классами. Подобно тому, как обычный класс определяет поведение определенных объектов, метакласс определяет поведение определенных классов и их экземпляров. Не все объектно-ориентированные языки программирования поддерживают метаклассы.
0

Является ли класс Object в Java метаклассом?

В Java класс Object действует как корень для всех других создаваемых классов. Каждый новый класс наследуется от Object, поэтому может быть объектом, рассматриваемым как метакласс Java? Я полагаю, что в Java есть только один метакласс, а не как Small...
11 февр. '16 в 0:13
1

Функция __getattribute__ возвращает значение объекта из другого класса

У меня есть базовый класс, который имеет 2 атрибута, которые сами из другого класса. См. Код ниже class Base(object): def __init__(self, obj1, obj2): self.obj1 = obj1 self.obj2 = obj2 def __getattribute__(self, name): ...
15 нояб. '15 в 8:16
1

Подкласс Django ModelBase (метакласс для моделей Django)

Я хочу, чтобы некоторые из моих моделей Django имели свойство "владелец". Возможно, мне придется изменить или увеличить логику позже, и логика будет использоваться повторно во многих классах. Поэтому я хотел бы просто наследовать из класса Owned кот...
19 нояб. '15 в 3:57
1

Неработающие синглеты метакласса

Я пробовал недавно добавить синглтон в свой проект, но он не действует так, как я бы подумал. Код выглядит примерно так: Основной /main.py class main(metaclass=Singleton): def __init__(self): .... def Action(self): self.help...
31 янв. '16 в 23:26
2

Почему метакласс не имеет доступа к атрибутам, находящимся в подклассе класса, определенного метаклассом?

Класс Foo определяется метаклассом Meta. Метакласс перекрывает атрибуты класса и выводит их на экран. Класс Bar подклассы Foo. Однако метакласс не печатает унаследованные атрибуты из Bar. Почему метакласс не имеет доступа к атрибутам Foo унаследов...
28 апр. '15 в 2:11
1

метаклас python, класс типа и класс объекта

У меня болит голова, пытаясь понять циклические отношения, которые выходят из типа metaclass, класса object и типа class. Я пытаюсь понять, как python делает все объектом. Это потому, что все является экземпляром типа метакласса, или это потому, чт...
01 июн. '15 в 3:07
1

Python metaclass 'nmspc', что это значит?

Я видел, что "nmspc" используется в методах __init__ и __new__ для метакласса в Python. Что означает "nmspc"? class SimpleMeta1(type): def __init__(cls, name, bases, nmspc): super(SimpleMeta1, cls).__init__(name, bases, nmspc) cl...
21 июн. '15 в 8:35
0

Python - Class Factory

Я использую классы для разработки сетевых разговоров, у меня есть этот код: class Conversation(object): __metaclass__ = ABCMeta def __init__(self, received=0, sent=0): self.sent = sent self.received = received def __str...
23 июн. '15 в 1:37
0

Динамически создавать несколько подклассов с динамически названной ссылкой

У меня есть модуль (myMod.py) с объектом baseObj с несколькими методами class baseObj(object): .... def doThing(self): ...... Мне нужно создать много подклассов, нормальный способ сделать это: class Foo(baseObl): pass class Ba...
23 июл. '15 в 16:38
1

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

Я использую groovy 2.3.8 Я пытаюсь понять, как вызовы методов работают в groovy. В частности, если у нас есть иерархия классов Java, каждая из которых имеет metaClass как metaClass ниже class A { } A.metaClass.hello = { "hello superclass" } clas...
04 сент. '15 в 19:50
2

Как создать красивую оболочку оболочки команд в Python

Я создал специальный метакласс, чтобы у меня была хорошая оболочка для программ/команд с первым аргументом "action" (без тире (ов)). Особенно svn, git и т.д. Я не хочу использовать внешние инструменты для этой цели. import subprocess class CmdW...
01 окт. '15 в 14:04
3

Как переопределить методы базового класса в Python условно, существуют ли они?

У меня есть классы BasicEvidenceTarget и SchedulableSoma. Иногда я наследую от SchedulableSoma, BasicEvidenceTarget, иногда я наследую только SchedulableSoma. Когда я наследую от SchedulableSoma, BasicEvidenceTarget, я хочу, чтобы SchedulableSoma пе...
07 нояб. '15 в 22:38
1

Как определить динамически, что некоторый метод класса уже существует в базовом классе? (Python 2.7)

Мне нужно определить какой-либо метод ChildClass переопределяет уже существующий метод в BaseClass. (Python 2.7) class BaseClass(object): def method(self): pass class ChildClass1(BaseClass): def method(self): pass class Chi...
02 дек. '14 в 16:26
1

Как построить иерархическое представление унаследованных классов в Python?

Это вопрос, который я пытался избежать несколько раз, но я, наконец, не смог избежать этого вопроса в недавнем проекте. Я пробовал различные решения и решил использовать один из них и хотел бы поделиться им с вами. Многие решения в Интернете просто ...
27 февр. '15 в 13:59
1

Objective-C динамически определяет метод во время выполнения через строку

После прочтения нескольких сообщений в блоге и поиска через SO, я знаю, как добавить метод в класс, но никто не затрагивает, как определить тело метода из String. Вот пример блога, который приближается к тому, что я хочу сделать: http://theocacao....
03 июн. '14 в 21:22