Ruby programmeringsspråk har ett par sätt att kombinera metoderna för två klasser . Klasserna är samlingar av relaterade metoder och data medlemmar . Två klasser kan kombinera sina metoder genom att använda inkludera eller förlänga uttalanden . Båda dessa påståenden är specialiserade för olika ändamål och utföra olika saker . Klassmetoder
Öka tillägger angivna moduler metoder som klassmetoder till målet klassen . Klass metoder finns tillgängliga för alla instanser av målklassen . Detta innebär att alla objekt som skapas baserat på den målklassen har tillgång till metoderna i någon klass som förlängs . Därför sträcker sig är ett mer universellt sätt att inkludera metoder i en klass , eftersom det påverkar alla instanser av den klassen .
Förekomstmetoder
Inkludera förs specificerad moduler metoder som förekomstmetoder till målet klassen . Förekomstmetoder är endast tillgängliga för den särskilda instans av målet klassen . Någon annan klass av samma typ har inte tillgång till metoderna för klassen ingår , om inte det också har include metoden anropas på det .
Variable Tillgång
målklass har tillgång till variablerna i någon annan klass som har inkluderats . Förläng ger inte denna tillgång .
Public kontra privat
Inkludera är en privat metod , och sträcker sig är en allmän metod . Detta innebär att bland annat måste åberopas inom en klass kropp .