📄 01 - extending specific objects with modules.rb
字号:
class Person attr_reader :name, :age, :occupation def initialize(name, age, occupation) @name, @age, @occupation = name, age, occupation end def mild_mannered? true endend#---jimmy = Person.new('Jimmy Olsen', 21, 'cub reporter')clark = Person.new('Clark Kent', 35, 'reporter')jimmy.mild_mannered? # => trueclark.mild_mannered? # => true#---module SuperPowers def fly 'Flying!' end def leap(what) "Leaping #{what} in a single bound!" end def mild_mannered? false end def superhero_name 'Superman' endend#---clark.extend(SuperPowers)clark.superhero_name # => "Superman"clark.fly # => "Flying!"clark.mild_mannered? # => falsejimmy.mild_mannered? # => true#---class Person extend SuperPowersend#which is equivalent to:Person.extend(SuperPowers)#---Person.superhero_name # => "Superman"Person.fly # => "Flying!"#---
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -