astux7/ruby_method.md

– maakt de methoden van de module beschikbaar voor de instantie van een klasse. Het neemt alle methoden van een andere module en neemt ze op in de huidige module. Dit is iets op taalniveau. De include methode is de primaire manier om klassen uit te breiden met andere modules (meestal aangeduid als mix-ins).

module Afterendclass Example include AfterendExample.ancestors# => 

– voert een ander bestand uit. Houdt ook bij wat je in het verleden hebt vereist en zal niet twee keer hetzelfde bestand vereisen.Voor import bibliotheken meestal.

– maakt het mogelijk om een bestand te laden dat relatief is aan het bestand dat de require_relative statement bevat.Bijvoorbeeld als je een rspec klassen in /spec directory en gegevens voor hen onder thespec/data directory, dan zou je de regel dit in test case:

require_relative "data/test"

– voor execute code.

– zal de uitgebreide klasse toe te voegen aan de voorouders van de uitbreidende klassen’singleton klasse. Andere woorden extend mix de functionaliteit van de module in de klasse en maakt deze methoden beschikbaar voor de klasse zelf.

module After def module_method puts "Module Method invoked" endendclass Exampleendex = Example.newex.extend Afterex.module_method# => Module Method invoked

– wordt gebruikt voor overridden methode oproep door de overriding methode.using super zal dezelfde methode, maar zoals gedefinieerd in de superklasse aanroepen en u het resultaat.

class Animal def move "I can move" endendclass Bird def move super + "by flying" endendputs Animal.new.move# => I can moveputs Bird.new.move# => I can move by flying

– roept Module.prepend_features op elke parameter in omgekeerde volgorde.

module Beforeendclass Example prepend BeforeendExample.ancestors# => 

Laat een antwoord achter

Het e-mailadres wordt niet gepubliceerd.