Ruby初心者です。

Rails tutorialの第9章まで進めています。
以下のコードのrememberがなぜ、User.rememberにならないのかが疑問です。

class内部にあるメンバ関数は全て、User.(メンバ) もしくは、 self.(メンバ)と定義するべきと思っていたのですが、間違いなのでしょうか、また、間違いならば、なぜ間違いなのでしょうか。
ご教授よろしくお願いします。

オブジェクト指向の理解ができていないと思っており、反省して勉強していますが、よくわからないです。

リスト 9.3: rememberメソッドをUserモデルに追加する green

class User < ApplicationRecord
  attr_accessor :remember_token
  before_save { self.email = email.downcase }
  validates :name,  presence: true, length: { maximum: 50 }
  VALID_EMAIL_REGEX = /\A[\w+\-.]+@[a-z\d\-.]+\.[a-z]+\z/i
  validates :email, presence: true, length: { maximum: 255 },
                    format: { with: VALID_EMAIL_REGEX },
                    uniqueness: { case_sensitive: false }
  has_secure_password
  validates :password, presence: true, length: { minimum: 6 }

  # 渡された文字列のハッシュ値を返す
  def User.digest(string)
    cost = ActiveModel::SecurePassword.min_cost ? BCrypt::Engine::MIN_COST :
                                                  BCrypt::Engine.cost
    BCrypt::Password.create(string, cost: cost)
  end

  # ランダムなトークンを返す
  def User.new_token
    SecureRandom.urlsafe_base64
  end

  # 永続セッションのためにユーザーをデータベースに記憶する
  def remember   #⦅memo⦆User.rememberではないのはなぜ?
    self.remember_token = User.new_token
    update_attribute(:remember_digest, User.digest(remember_token))
  end
end