Atrybuty i metody prototypów są delegowane do wszystkich obiektów równoważnych klas zdefiniowanych przez ich prototyp. Atrybuty i metody posiadane indywidualnie przez obiekt nie mogą być współdzielone z innymi obiektami o tej samej klasie równoważnej, dla przykładu atrybut „zawartość cukru” może być niespodziewanie nieobecny w „jabłku”. Tylko pojedyncze dziedziczenie może być zaimplementowane poprzez prototyp.
Podstawowe założenia paradygmatu obiektowego Istnieje pewna różnica zdań co do tego, jakie cechy języków programowania czynią je obiektowymi. Powszechnie uważa się, że najważniejsze są następujące cechy:
Abstrakcja Każdy obiekt w systemie służy jako model abstrakcyjnego „wykonawcy”, który może wykonywać pracę, opisywać i zmieniać swój stan oraz komunikować się z innymi obiektami w systemie bez ujawniania, w jaki sposób zaimplementowano dane cechy. Procesy, funkcje lub metody mogą być również abstrahowane, a kiedy tak się dzieje, konieczne są rozmaite techniki rozszerzania abstrakcji.