V objektově orientovaném programování je podtřída třída , která dědí některé (nebo všechny) své vlastnosti od své nadtřídy .
Pro zjednodušení si můžete podtřídu představit jako jednu z „variací“ její nadtřídy, například „ Manx je plemeno koček“ a „čtverec je druh obdélníku“:
Z tohoto hlediska je podtřída jemnější verzí své nadtřídy; to znamená, že jsou uvedena fakta o kočkách, která uvádějí, že obecně platí pro všechny kočky, i když některá plemena nemají ocas. A všechny obdélníky mají čtyři strany, zatímco čtverec má užší výklad těchto charakteristik: všechny tyto čtyři strany musí mít stejnou délku.
Nezaměňujte vztah podtřída-nadtřída se vztahem tříd a jejich objektů (instancí). "Instance kočky" odkazuje na jednu konkrétní kočku . Manská kočka v tabulce je i nadále třídou, protože existuje mnoho různých manských koček. A pokud konkrétní kočka (instance třídy koček) náhodou ztratí ocas v boji s liškou, pak to nemění samotnou třídu koček. Stále to bude jen konkrétní kočka, která prošla změnami.
Podtřídy a nadtřídy jsou často označovány jako odvozené nebo odvozené (odvozené) a základní (základní) třídy, v daném pořadí, a tyto termíny jsou pevně stanoveny tvůrcem C++ - Bjorn Stroustrupem , který považoval tyto termíny za intuitivnější než tradiční nomenklaturu jména. [jeden]
Podrobnější vysvětlení pojmu třídy v objektově orientovaném programování naleznete v článku o třídách .