Methoden, die eng mit der Klasse verwandt sind, aber nicht die in jeder Instanz enthaltenen Daten verwenden
python
Klasse Klassenname
def self.Klassenmethode
#Klassenmethoden verarbeiten
end
end
python
Klasse Klassenname
class << self
def Klassenmethode
#Klassenmethoden verarbeiten
end
end
end
Gehen Sie beim Aufrufen einer Klassenmethode wie folgt vor
python
Name der Klasse.Methodenname
python
class Food
def initialize(name)
@name = name
end
#self.Wenn Sie hinzufügen, wird es eine Klassenmethode
def self.create_foods(names)
names.map do |name|
Food.new(name)
end
end
#Instanzmethode
def eat
"I will eat an #{@name}."
end
end
names = ['apple', 'octopus']
#Aufrufen einer Klassenmethode
foods = Food.create_foods(names)
foods.each do |food|
puts food.eat
end
#=> I will eat an apple.
# I will eat an octopus.
Eine Einführung in Ruby, um ein Profi zu werden
Recommended Posts