[RUBY] À propos du rôle de la méthode initialize

Il fut un temps où j'étais le pionnier du genre mystérieux de la méthode d'initialisation Moe seul, mais les étudiants me demandent souvent les différences entre les classes et les instances, les méthodes d'instance et les classifications et les rôles des méthodes de classe, donc le lien ci-dessus à nouveau Je vais coder ce qui est mentionné dans l'article.

[L'histoire que l'initialisation est mignonne] → https://qiita.com/yamazaki_akihiro/private/32ea4cf5e653913d2485

class Mother
  
  def initialize(sleeper)
    puts "#{sleeper}Je suis entré dans ma chambre, mais il n'y a aucun signe de réveil. C'est un sommeil vraiment calme."
    @sleeper = sleeper
  end

  def ding_frypan
    puts ""Ouais !!!!" * La poêle sonne. C'est une nuisance pour le quartier"
    puts ""Gwahhhh !!!"#{@sleeper}Le diable de la mort!"
  end

  def open_curtain
    puts ""Ouais !!!!" * Le rideau a été ouvert vigoureusement. Non recommandé car il met une charge sur les rails"
    puts ""Gwahhhh !!!"#{@sleeper}Le diable de la mort!"
  end

  def strip_duvet
    puts ""Ouais !!!!" * Le futon a été décollé. Si c'est du riz d'amour, il y aura diverses choses après cela et les deux seront en retard, mais cette fois c'est différent"
    puts ""Gwahhhh !!!"#{@sleeper}Le diable de la mort!"
  end

  def self.go_job
    puts ""Je ne connais pas ma mère même si je suis en retard!""
    puts "Et ma mère a disparu dans la ville entourée par la brume matinale..."
  end
end

puts "Il est 7 heures. Aimeriez-vous vous réveiller bientôt en train de dormir?"
puts "1,Va dans la chambre et réveille-toi"
puts "2,Allez travailler sans vous réveiller"
num = gets.to_i
if num == 1
  puts "Qui vous réveillez-vous?"
  sleeper = gets.chomp
  mother = Mother.new(sleeper)
  puts "Comment le réveillez-vous?"
  puts "1,Faites sonner la poêle(C'est trop bruyant!)"
  puts "2,Ouvre le rideau et laisse briller le soleil du matin(C'est éblouissant!)"
  puts "3,Retirer le futon(Il fait froid! * Cela peut être un peu gênant lorsque vous êtes adolescent)"
  plan = gets.to_i
  if plan == 1
    mother.ding_frypan
  elsif plan == 2
    mother.open_curtain
  elsif plan == 3
    mother.strip_duvet
  else
    puts "Vous ne voulez pas vraiment le réveiller. Allons travailler"
    Mother.go_job
  end
elsif num == 2
  Mother.go_job
else
  puts "Les gars! Eh bien, je ne suis pas une mère! !! !! Quel gars! !! ??"
end

Recommended Posts

À propos du rôle de la méthode initialize
À propos de la méthode
Sortie sur la méthode, partie 2
À propos de la méthode de longueur
À propos de la méthode cartographique
À propos de la méthode des ancêtres
À propos de la méthode to_s.
Sortie sur la méthode Partie 1
À propos de la description de Docker-compose.yml
Prise en compte de la méthode des temps
Quelle est la méthode d'initialisation?
À propos du comportement de ruby Hash # ==
À propos des bases du développement Android
[Ruby] Questions et vérification du nombre d'arguments de méthode
méthode d'initialisation
Pensez aux 7 règles d'Optionnel
À propos du niveau de journalisation de java.util.logging.Logger
Qu'est-ce qu'un test? ・ À propos de l'importance d'un test
À propos du fonctionnement de next () et nextLine ()
À propos de l'affichage initial de Spring Framework
À propos du traitement de BigDecimal (avec réflexion)
J'ai approfondi ma compréhension de la méthode de fusion
À propos du nombre de threads de Completable Future
[Introduction à Ruby] À propos du rôle de true et break in the while statement
À propos de la méthode de division continue apprise en 4e année du primaire
[Ruby] méthode d'initialisation
À propos du paquet
[Order method] Définit l'ordre des données dans Rails
[Java] Gestion des Java Beans dans la chaîne de méthodes
À propos du guide de démarrage officiel de Spring Framework
A propos de l'ordre de description des propriétés système Java
À propos de l'idée des classes anonymes en Java
L'ordre des modificateurs de méthode Java est fixe
Sortie de la façon d'utiliser la méthode slice
À propos de la synchronisation des appels et des arguments de la méthode addToBackStack
À propos de next () et nextLine () de la classe Scanner
ArrayList et le rôle de l'interface vu depuis List
À propos de Aucune erreur de méthode
Le monde de Clara-Rules (2)
Commentaire: à propos de l'interface
À propos de disconnect () de HttpURLConnection
À propos de la double fonction -java
[Ruby] Le rôle des indices dans l'apprentissage des éléments dans les tableaux
[Grails] À propos de la zone de paramétrage et des éléments de paramétrage de application.yml
À propos de l'utilité des monades dans une perspective orientée objet
Parler des mérites des variables de liaison de base de données ((1) Introduction)
À propos du problème de blocage dans le traitement parallèle dans la version 4.0 de gem'sprockets
À propos de la liaison de méthode Java
À propos de DI of Spring ①
À propos de l'opérateur ternaire
Le monde de Clara-Rules (4)
Le monde de Clara-Rules (1)
À propos de DI of Spring ②
définition de la méthode ruby
Le monde de Clara-Rules (5)