「Ruby/class」の版間の差分
提供: 初心者エンジニアの簡易メモ
(→プロパティ付きクラス) |
(→staticクラス) |
||
(同じ利用者による、間の1版が非表示) | |||
行31: | 行31: | ||
attr_writer :name 更新が可能 | attr_writer :name 更新が可能 | ||
attr_accessor :name 参照と更新が可能 | attr_accessor :name 参照と更新が可能 | ||
+ | |||
+ | ==staticクラス== | ||
+ | math_utility.rb | ||
+ | module MathUtility | ||
+ | extend self | ||
+ | def plus(num, num) | ||
+ | return num + num | ||
+ | end | ||
+ | end | ||
+ | |||
+ | 呼び出し | ||
+ | MathUtility.plus(1, 2) | ||
+ | |||
+ | ==privateメソッド== | ||
+ | class ApiController | ||
+ | def main | ||
+ | validate(params[:name]) | ||
+ | end | ||
+ | private | ||
+ | def validate(name) | ||
+ | return "ok" | ||
+ | end | ||
+ | end |
2017年11月9日 (木) 05:15時点における最新版
クラスとメソッド
class TestController def hello end end
継承の仕方
class TestController < ApplicationController def hello end end
プロパティ付きクラス
class TestService def initialize(name) @name = name end def exec() return @name end attr_accessor :name end
上記呼び出し
service = TestService.new("test1") service.exec() # test1 service.name # test1
プロパティ属性
attr_reader :name 参照が可能 attr_writer :name 更新が可能 attr_accessor :name 参照と更新が可能
staticクラス
math_utility.rb
module MathUtility extend self def plus(num, num) return num + num end end
呼び出し
MathUtility.plus(1, 2)
privateメソッド
class ApiController def main validate(params[:name]) end private def validate(name) return "ok" end end