Unterschied zwischen Ruby-Instanzvariable und lokaler Variable

Instanzmethode

Wenn Sie eine Methode in einer Klasse definieren, wird diese Methode zu einer Instanzmethode. Instanzmethoden sind Methoden, die für Instanzen dieser Klasse aufgerufen werden können. (Beispiel)

class User
  def emotion
     "Happy!"
  end
end

user = User.new
user.emotion

Ergebnis

"Happy!"

Instanzvariable

Innerhalb einer Klasse können Sie Instanzvariablen verwenden (Variablen, die in derselben Instanz gemeinsam genutzt werden). Variablennamen beginnen mit @. (Beispiel)

class User
  def initialize(emotion)
    @emotion = emotion
  end

  def happy
    "I am #{@emotion}."
  end
end
user = User.new('Happy')
user.happy

Ergebnis

"I am Happy."

Lokale Variablen

Eine Variable, die innerhalb einer Methode oder eines Blocks erstellt wurde. Beginnen Sie mit einem niedrigeren Alphabet und unterstreichen Sie es. Lokale Variablen müssen immer durch Zuweisen eines Werts mit = vor dem Referenzieren erstellt werden.

(Beispiel)

class User
  def initialize(emotion)
    @emotion = emotion
  end

  def happy
    shuffled_emotion = @emotion.chars.shuffle.join
    "I am #{shuffled_emotion}."
  end
end
user = User.new('Happy')
user.happy

In diesem Beispiel wäre die lokale Variable shuffled_emotion.

Ergebnis

"I am ayppH."

Literaturhinweise

Einführung in Ruby für diejenigen, die Profis werden möchten

Recommended Posts

Unterschied zwischen Ruby-Instanzvariable und lokaler Variable
Unterschied zwischen Instanzvariable und Klassenvariable
Unterschied zwischen Variablen und Instanzvariablen
Unterschied zwischen Klasse und Instanz
[Ruby] Unterschied zwischen get und post
Unterschied zwischen Instanzmethode und Klassenmethode
[Ruby] Unterschied zwischen is_a? Und instance_of?
Hinweis: Unterschied zwischen Ruby "p" und "Puts"
Unterschied zwischen "|| =" und "instance_variable_defined?" Im Ruby-Memo
[Ruby] Unterschied zwischen print, put und p
Der Unterschied zwischen der Ruby-Instanzmethode und der Klassenmethode ist leicht zu verstehen.
Unterschied zwischen vh und%
Unterschied zwischen i ++ und ++ i
[Ruby] Unterschied zwischen Puts und Return, Output und Return
[Java] Unterschied zwischen "endgültiger Variable" und "unveränderlichem Objekt"
[Ruby] Ich habe über den Unterschied zwischen each_with_index und each.with_index nachgedacht
[Java] Unterschied zwischen == und gleich
Unterschied zwischen redirect_to und render
Unterschiede zwischen Klassen und Instanzen in Ruby
Unterschied zwischen CUI und GUI
Unterschied zwischen Mockito-Core und Mockito-All
Unterschied zwischen Bundle und Bundle-Installation
Unterschied zwischen ArrayList und LinkedList
Unterschied zwischen render und redirect_to
Unterschied zwischen List und ArrayList
[Ruby] Unterschied zwischen Match / Scan
Unterschied zwischen .bashrc und .bash_profile
Unterschied zwischen StringBuilder und StringBuffer
Unterschied zwischen render und redirect_to
[Docker-compose] Unterschied zwischen env_file und Umgebung. Informationen zur Priorität der Anwendung von Umgebungsvariablen
[Java] Unterschied zwischen der Zuweisung der Basistypvariablen und der Zuordnung der Referenztypvariablen
Was ist der Unterschied zwischen einer Aktion und einer Instanzmethode?
Der Unterschied zwischen der Programmierung mit Ruby-Klassen und der Programmierung ohne Ruby-Klassen
Unterschied zwischen == Operator und Methode gleich
[Java] Unterschied zwischen Hashmap und HashTable
[Terminal] Unterschied zwischen irb und pry
JavaServlet: Unterschied zwischen executeQuery und executeUpdate
Unterschied zwischen dem Operator == und der Methode eqals
Grober Unterschied zwischen RSpec und Minitest
[Rails] Unterschied zwischen find und find_by
[JAVA] Unterschied zwischen Abstract und Interface
Unterschied zwischen Thymeleaf @RestController und @Controller
Unterschied zwischen Stream Map und FlatMap
[Java] Unterschied zwischen Array und ArrayList
Unterschied zwischen primitivem Typ und Referenztyp
Unterschied zwischen string.getByte () und Hex.decodeHex (string.toCharaArray ())
[Java] Unterschied zwischen Closeable und AutoCloseable
[Java] Unterschied zwischen StringBuffer und StringBuilder
[Java] Unterschied zwischen Länge, Länge () und Größe ()
[Rails] Unterschied zwischen redirect_to und Rendern
[Android] Unterschied zwischen finish () und return;