Begreppen klass, subklass och virtuell procedur är ganska välbegripliga och erkända som några av de viktigaste begreppen i objektorienterad programmering. Möjligheten att ändra en virtuell procedur i en underklass är en kraftfull teknik för att specialisera de allmänna egenskaperna hos superklassen. I de flesta objektorienterade språk kan attributen för ett objekt vara hänvisningar till objekt och (virtuella) procedurer. I Simula och BETA är det också möjligt att ha klassattribut. Befogenheten hos klassattribut har ännu inte blivit allmänt erkänd. I BETA kan en klass också ha virtuella klassattribut. Detta gör det möjligt att skjuta upp en del av specifikationen av en klassattribut till en underklass. I denna mening är virtuella klasser analoga med virtuella procedurer. Virtuella klasser är främst intressanta inom starkt maskinskrivna språk där de ger en mekanism för att definiera allmänna parameteriserade klasser såsom set, vektor och lista. I detta avseende utgör de ett alternativ till generiska läkemedel. Även om begreppet virtuell klass härstammar från BETA, presenteras det som en allmän språkmekanism.
Specifikationen för en virtuell klass [16] REF är helt jämförbar med specifikationen för ett virtuellt förfarande.
Virtual classes: a powerful mechanism in object-oriented programming
{'venue': "OOPSLA '89", 'journal': None, 'mag_field_of_study': ['Computer Science']}