facebook twitter hatena line email

Ruby/class

提供: 初心者エンジニアの簡易メモ
移動: 案内検索

クラスとメソッド

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