Клас (програмиране): Разлика между версии

Изтрито е съдържание Добавено е съдържание
Tir256 (беседа | приноси)
Tir256 (беседа | приноси)
Ред 47:
<b>Метакласовете</b> са класове чиито инстанции са класове. Метакласовете описват обща структура на колекция от класове и могат да имплементират [[Шаблони за дизайн (софтуер)|дизайн модел]] (design pattern) или да опишат определени видове класове. Метакласовете са често използвани за описване на [[Софтуерна рамка|фреймуърци]] (frameworks).
 
При някои езици, като [[Python|Python]], [[Ruby|Ruby]] или [[Smalltalk|Smalltalk]], класа е също и обект; поради тази причина всеки клас е инстанция на уникален метаклас, който е вграден в езика. Например в [[Objective-C|Objective-C]], всеки обект и клас са инстанция на NSObject. Например така наречената Common Lisp Object система (CLOS) осигурява метаобектови протоколи ([[Metaobject|metaobject protocols]] – MOPs) за да имплементира тези класове и метакласове.
 
=== Ненаследими ===