Object Oriented programming idealizes genetics
Just like computer networking idealizes social structures, so does object-oriented programming idealize genetics. Objects inherit from each other, just like biological individuals. There is polymorphism, just like with genes. However, abstract classes which can’t have instance themselves is somewhat counter-intuitive in the genetic metaphor.