Latest web development tutorials

Ruby-Methode

Ruby-Methode ist ähnlich wie bei anderen Funktionen Programmiersprache. Ruby-Methode zum Bündeln eines oder mehrerer Duplikat-Anweisungen in einem Gerät.

Der Methodenname sollte mit einem Kleinbuchstaben beginnen. Wenn Sie in Großbuchstaben als Beginn des Methodennamen sind, wahrscheinlich Ruby es als eine Konstante verwenden, was zu nennen falsch analysieren.

Vor dem Aufruf der Methode sollte anders definiert werden, wird Ruby-undefinierten Methodenaufruf Ausnahme erzeugen.

Grammatik

def method_name [( [arg [= default]]...[, * arg [, &expr ]])]
   expr..
end

So können Sie eine einfache Methode zu definieren, wie folgt:

def method_name 
   expr..
end

Sie können eine Methode definieren, um Parameter akzeptieren, wie folgt:

def method_name (var1, var2)
   expr..
end

Sie können den Standardwert für einen Parameter gesetzt ist, wird der Parameter nicht erforderlich, um den Standardwert, wenn der Methodenaufruf zu übergeben:

def method_name (var1=value1, var2=value2)
   expr..
end

Wenn Sie eine Methode aufrufen möchten, verwenden Sie einfach den Namen der Methode, wie unten dargestellt:

method_name

Wenn Sie jedoch eine Methode mit Parametern aufrufen, die Parameter, die Sie treffen müssen, wenn die Methodennamen zu schreiben, zum Beispiel:

method_name 25, 30

Das Verfahren zur Bestimmung der Parameter größte Nachteil besteht darin die Notwendigkeit, die Anzahl der Parameter zu beachten, wenn die Methode aufgerufen wird. Zum Beispiel, wenn Sie derjenige sind, der nur vorbei zwei Argumente drei Parameter Methode akzeptiert wird Rubin ein Fehler angezeigt.

Beispiele

#!/usr/bin/ruby
# -*- coding: UTF-8 -*-

def test(a1="Ruby", a2="Perl")
   puts "编程语言为 #{a1}"
   puts "编程语言为 #{a2}"
end
test "C", "C++"
test

Führen Sie das obige Beispiel Ausgabe lautet:

编程语言为 C
编程语言为 C++
编程语言为 Ruby
编程语言为 Perl

Der Rückgabewert von einer Methode

Rubin jede Methode gibt einen Standardwert. Dieser Wert ist der Wert, der durch die letzte Anweisung zurückgegeben. Zum Beispiel:

def test
   i = 100
   j = 10
   k = 0
end

Wenn Sie diese Methode aufrufen wird eine endgültige Deklaration der Variablen k zurückzukehren.

Ruby- return - Anweisung

Rubin in derreturn- Anweisung wird verwendet , um aus einer Ruby - Methode ein oder mehrere Werte zurückgeben.

Grammatik

return [expr[`,' expr...]]

Wenn mehr als zwei Ausdrücke sind eine Reihe dieser Werte enthält, wird der Rückgabewert sein. Wird kein Ausdruck angegeben wird, wird gleich Null ist der Rückgabewert sein.

Beispiele

return

或

return 12

或

return 1,2,3

Betrachten Sie die folgenden Beispiele:

#!/usr/bin/ruby
# -*- coding: UTF-8 -*-

def test
   i = 100
   j = 200
   k = 300
return i, j, k
end
var = test
puts var

Führen Sie das obige Beispiel Ausgabe lautet:

100
200
300

Variable Anzahl von Argumenten

Angenommen, Sie haben eine Methode deklarieren, die zwei Argumente übernimmt, wenn Sie diese Methode aufrufen, können Sie auch zwei Parameter übergeben müssen.

Allerdings Ruby ermöglicht es Ihnen, eine variable Anzahl von Parametern zu deklarieren. Schauen wir uns die folgenden Beispiele an:

#!/usr/bin/ruby
# -*- coding: UTF-8 -*-

def sample (*test)
   puts "参数个数为 #{test.length}"
   for i in 0...test.length
      puts "参数值为 #{test[i]}"
   end
end
sample "Zara", "6", "F"
sample "Mac", "36", "M", "MCA"

In diesem Code haben Sie eine Methode der Probe erklärt, einen Parameter-Test akzeptiert. Jedoch ist dieser Parameter ein variabler Parameter. Dies bedeutet, dass die Parameter können mit einer unterschiedlichen Anzahl von Variablen vorgesehen sein. Führen Sie das obige Beispiel Ausgabe lautet:

参数个数为 3
参数值为 Zara
参数值为 6
参数值为 F
参数个数为 4
参数值为 Mac
参数值为 36
参数值为 M
参数值为 MCA

Klassenmethoden

Wenn die externe, die Methode Methode in der Klasse Standard definiert alsprivatgekennzeichnet ist.Auf der anderen Seite, wenn das Verfahren in der Klasse definiert, wird die Standard als öffentlich markiert.

Die Standardmethode der Sichtbarkeit undprivatenTag kann über das Modul (Modul) inöffentlichenoderprivatengeändertwerden.

Wenn Sie die Klassenmethode zugreifen möchten, müssen Sie zunächst die Klasse instanziiert. Dann das Objekt verwenden, können Sie jedes Mitglied der Klasse zugreifen.

Ruby bietet eine Möglichkeit, ohne Instanziierung Methoden zuzugreifen. Mal sehen, wie zu deklarieren und die Klassenmethode zuzugreifen:

class Accounts
   def reading_charge
   end
   def Accounts.return_date
   end
end

Wir wissen bereits, wie die Methode RETURN_DATE Aussage. Es ist nach dem Klassennamen gefolgt von einem Punkt, von dem Methodennamen hinter dem Punkt der Erklärung folgte. Sie können direkt die Klassenmethode wie folgt zugreifen:

Accounts.return_date

Um diese Methode zu gelangen, müssen Sie nicht eine Objektklasse Accounts zu erstellen.

Ruby- Alias - Anweisung

Diese Aussage wird als Methode oder globale Variablen aus Pseudonyms. Aliase können nicht innerhalb der Methode Körper definiert werden. Auch wenn das Verfahren außer Kraft gesetzt wird, behält die Alias-Methode auch die aktuelle Definition des Verfahrens.

Anzahl der globalen Variablen ($ 1, $ 2, ...) aus dem Alias ​​ist verboten. Rewrite der integrierten globalen Variablen können zu ernsthaften Problemen führen.

Grammatik

alias 方法名 方法名
alias 全局变量 全局变量

Beispiele

alias foo bar
alias $MATCH $&

Hier haben wir einen Alias ​​für foo Bar, definiert einen Alias ​​für $ & $ MATCH zu definieren.

Rubinundef - Anweisung

Diese Anweisung wird verwendet, um die Methodendefinition abzubrechen.undefkann nicht innerhalb einer Methode Körper erscheinen.

Durch die Verwendung vonundefundAliaskann die Klassenschnittstelle unabhängig von der übergeordneten Klasse geändert werden, aber bitte beachten Sie, dass , wenn seine eigene interne Methode aufruft, kann sie das Programm untergraben.

Grammatik

undef 方法名

Beispiele

Die folgenden Beispiele werden genanntbarMethodendefinition aufgehoben:

undef bar