Latest web development tutorials

metoda Ruby

Metoda Ruby jest podobna do innych funkcji języka programowania. Metoda Ruby do wiązania jednego lub więcej duplikaty wypowiedzi w jedną całość.

Nazwa metody należy rozpocząć od małej litery. Jeśli jesteś w wielkich liter na początku nazwy metody, Ruby prawdopodobnie będzie go używać jako stała, w wyniku nieprawidłowo analizowania zadzwonić.

Przed wywołaniem metody powinny być zdefiniowane inaczej, Ruby będzie produkować niezdefiniowanej metody wywołania wyjątku.

gramatyka

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

Tak, można zdefiniować prostą metodę, co następuje:

def method_name 
   expr..
end

Można zdefiniować sposób, aby zaakceptować parametry w następujący sposób:

def method_name (var1, var2)
   expr..
end

Można ustawić domyślną wartość dla parametru, parametr nie jest wymagany, aby przekazać wartość domyślną, jeśli wywołanie metody:

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

Gdy chcesz wywołać metodę, wystarczy użyć nazwy metody, jak pokazano poniżej:

method_name

Jednak podczas wywołania metody z parametrami, parametry, które trzeba podjąć podczas pisania nazwę metody, na przykład:

method_name 25, 30

Sposób użycia parametrów Największą wadą jest konieczność zapamiętania liczbę parametrów przy wywołaniu metody. Na przykład, jeśli jesteś tym, który przyjmuje trzy parametry metody tylko przechodzącej dwa argumenty, Ruby wyświetli błąd.

Przykłady

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

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

Uruchom wyjście Powyższy przykład to:

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

Wartość zwracana przez metodę

Ruby każda metoda zwraca wartość domyślną. Ta wartość to wartość zwracana przez ostatniego sprawozdania. Na przykład:

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

Po wywołaniu tej metody zwróci ostateczną deklarację zmiennej k.

Rubyreturn

Ruby w instrukcjireturnsłuży do powrotu jednego lub więcej wartości z metody Ruby.

gramatyka

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

Jeśli więcej niż dwa wyrażenia podano tablicę zawierającą te wartości będzie wartość zwracana. Jeśli nie wyrażenie jest podana, będzie zerowa wartość zwracana.

Przykłady

return

或

return 12

或

return 1,2,3

Rozważmy następujące przykłady:

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

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

Uruchom wyjście Powyższy przykład to:

100
200
300

Zmienna liczba argumentów

Powiedzmy zadeklarować metodę, która pobiera dwa argumenty, kiedy wywołanie tej metody, należy również przekazać dwa parametry.

Jednak Ruby pozwala zadeklarować zmienną liczbę parametrów. Spójrzmy na poniższych przykładach:

#!/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"

W tym kodzie, zadeklarowały metoda próbki akceptuje test parametru. Jednakże, ten parametr jest parametrem zmiennym. Oznacza to, że parametry mogą być wyposażone w różną ilość zmiennych. Uruchom wyjście Powyższy przykład to:

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

metody klas

Gdy zewnętrzne, metoda metoda zdefiniowana w klasie domyślnie oznaczone jakoprywatne.Z drugiej strony, jeśli Sposób według klasy, domyślnie jest to oznaczone jako publiczny.

Domyślna metoda widoczności i taguprywatnegomoże być zmieniony poprzez moduł (moduł) wpublicznychlubprywatnych.

Jeśli chcesz uzyskać dostęp do metody klasy, trzeba najpierw instancję klasy. Następnie, przy użyciu obiektu, można uzyskać dostęp do dowolnego członka klasy.

Ruby zapewnia dostęp, bez metod instancji. Zobaczmy, w jaki sposób zadeklarować i dostęp do metody klasy:

class Accounts
   def reading_charge
   end
   def Accounts.return_date
   end
end

Wiemy już jak wygląda oświadczenie Metoda RETURN_DATE. Jest po nazwie klasy, po której następuje kropka, a następnie nazwę metody po kropce do zgłoszenia. Można bezpośrednio przejść do metody klasy, co następuje:

Accounts.return_date

Aby uzyskać dostęp do tej metody, nie ma potrzeby tworzenia kont klasa obiektu.

Oświadczenie aliasRuby

To stwierdzenie jest stosowana jako metoda lub zmiennych globalnych z aliasów. Aliasy nie mogą być określone w korpusie metody. Nawet jeśli metoda jest przesłonięta metoda alias utrzymuje również aktualną definicję metody.

Ilość zmiennych globalnych ($ 1, $ 2, ...) z aliasu jest zabronione. Przepisz wbudowanych zmiennych globalnych może spowodować poważne problemy.

gramatyka

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

Przykłady

alias foo bar
alias $MATCH $&

Tutaj mamy zdefiniowany alias dla foo do baru, aby zdefiniować alias $ & $ meczu.

OświadczenieRubyUNDEF

To stwierdzenie jest używany, aby anulować definicję metody.undefnie mogą pojawić się w ciele metody.

Używającundefipseudonim,interfejs klasy mogą być modyfikowane niezależnie od klasy nadrzędnej, ale należy pamiętać, że gdy wywołuje własną metodę wewnętrznej, może to podważyć program.

gramatyka

undef 方法名

Przykłady

Poniższe przykłady są anulowane nazwie definicję metodyPasek:

undef bar