Latest web development tutorials

метод Руби

Метод Рубин похож на другие функции языка программирования. Метод Руби объединения в один пакет один или несколько повторяющихся заявлений в одно целое.

Имя метода должно начинаться со строчной буквы. Если вы заглавными буквами в начале имени метода, Ruby, вероятно, будет использовать его как константу, в результате чего неправильно разобрать слово.

Перед вызовом метода должен быть определен иначе, Ruby будет производить неопределенную исключение вызова метода.

грамматика

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

Таким образом, вы можете определить простой метод, следующим образом:

def method_name 
   expr..
end

Вы можете определить метод, чтобы принять параметры, следующим образом:

def method_name (var1, var2)
   expr..
end

Вы можете установить значение по умолчанию для параметра, параметр не требуется, чтобы передать значение по умолчанию, если при вызове метода:

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

Если вы хотите вызвать метод, просто использовать имя метода, как показано ниже:

method_name

Тем не менее, при вызове метода с параметрами, параметры, которые вы должны принять при написании имени метода, например:

method_name 25, 30

Метод использования параметров большим недостатком является необходимость запоминания числа параметров при вызове метода. Например, если вы тот, который принимает метод трех параметров лишь вскользь два аргумента, Ruby будет отображать сообщение об ошибке.

примеров

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

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

Запуск в приведенном выше примере выход:

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

Возвращаемое значение из метода

Рубин каждый метод возвращает значение по умолчанию. Это значение является значением, возвращенным последним оператором. Например:

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

При вызове этого метода возвращает итоговую декларацию переменной к.

геЬигпРубин

Рубин вответномзаявлении используется для возврата одного или нескольких значений из метода Ruby.

грамматика

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

Если более чем два выражения дают массив, содержащий эти значения будет возвращаемое значение. Если ни одно выражение не задано, ноль будет возвращаемое значение.

примеров

return

或

return 12

或

return 1,2,3

Рассмотрим следующие примеры:

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

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

Запуск в приведенном выше примере выход:

100
200
300

Переменным количеством аргументов

Скажем, вы объявляете метод, который принимает два аргумента, при вызове этого метода, вы также должны пройти два параметра.

Тем не менее, Ruby позволяет объявлять переменное число параметров. Давайте посмотрим на следующие примеры:

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

В этом коде, вы объявили метод выборки, принимает тест параметра. Тем не менее, этот параметр является переменным параметром. Это означает, что эти параметры могут быть обеспечены с различным числом переменных. Запуск в приведенном выше примере выход:

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

методы класса

Когда внешний метод метод , определенный в классе по умолчанию отмечены какчастные.С другой стороны, если метод, определенный в классе, по умолчанию отмечен как общественности.

Метод по умолчанию видимости ичастноготега может быть изменено через модуль (модуль) ,публичнымиличастным.

Если вы хотите получить доступ к метод класса, в первую очередь необходимо создать экземпляр класса. Затем, используя объект, вы можете получить доступ к любому члену класса.

Рубин обеспечивает способ доступа без методов инстанцировании. Давайте посмотрим, как объявлять и доступ к этому методу класса:

class Accounts
   def reading_charge
   end
   def Accounts.return_date
   end
end

Мы уже знаем, как оператор метод RETURN_DATE. Это после имени класса, за которым следует точка, а затем имя метода после точки к декларации. Вы можете получить прямой доступ к метода класса следующим образом:

Accounts.return_date

Чтобы получить доступ к этим методом, вам не нужно создавать учетные записи классов объектов.

Заявление псевдонимомРуби

Это утверждение используется в качестве метода или глобальных переменных из псевдонимов. Псевдонимы не может быть определен внутри тела метода. Даже если метод переопределяется, метод псевдоним также поддерживает текущее определение метода.

Количество глобальных переменных ($ 1, $ 2, ...) от псевдонима запрещено. Перепишите встроенный глобальных переменных может привести к серьезным проблемам.

грамматика

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

примеров

alias foo bar
alias $MATCH $&

Здесь мы определили псевдоним для Foo в бар, чтобы определить псевдоним для $ & $ MATCH.

РубиUNDEF заявление

Это утверждение используется для отмены определения метода.UNDEFне может появиться внутри тела метода.

ИспользуяUNDEFипсевдоним,интерфейс класса может быть изменен независимо от родительского класса, но обратите внимание , что , когда его собственный внутренний метод вызывает, это может подорвать программу.

грамматика

undef 方法名

примеров

Следующие примеры отменяются по имени определение методабар:

undef bar