Dziedziczenie jednoczynnikowe (lub jednoczynnikowe) to rodzaj dziedziczenia, w którym każdy członek klasy dziedziczy tylko jedną klasę nadrzędną. Oznacza to, że każda instancja klasy ma tylko jedną bazę danych, która zawiera wszystkie jej właściwości i metody.
Dziedziczenie jednoczynnikowe ma swoje zalety i wady. Z jednej strony upraszcza to kod i czyni go bardziej zrozumiałym, ponieważ każda metoda lub właściwość ma tylko jednego rodzica. Pozwala także uniknąć konfliktów nazewnictwa, ponieważ wszyscy członkowie klasy mają unikalne nazwy.
Jednak dziedziczenie jednoczynnikowe ma również pewne ograniczenia. Na przykład, jeśli klasa dziedziczy z kilku klas nadrzędnych, może mieć tylko te właściwości i metody, które zostały zdefiniowane w każdej z klas nadrzędnych. Może to spowodować, że klasa będzie zawierać zbędne właściwości i metody, co utrudni jej użycie.
Ponadto dziedziczenie jednoczynnikowe może być nieskuteczne, jeśli klasy nadrzędne mają wiele wspólnych właściwości i metod. W takim przypadku każda instancja klasy będzie zawierać dużo zduplikowanych danych, co może skutkować zwiększeniem rozmiaru bazy danych i spowolnieniem programu.
Ogólnie rzecz biorąc, dziedziczenie jednoczynnikowe jest dobrym wyborem w przypadku prostych klas, które nie mają wielu właściwości i metod i które nie wymagają udostępniania danych pomiędzy klasami nadrzędnymi. Jeśli jednak klasy mają złożoną strukturę i współdzielą dane, bardziej efektywne może być zastosowanie dziedziczenia wieloczynnikowego lub złożonego.